From 41719bdb8ad1ff2e1a050a4335ed921eeffa282f Mon Sep 17 00:00:00 2001 From: Kalle Dalheimer Date: Thu, 29 Mar 2001 15:02:19 +0000 Subject: [PATCH] - Compiles and links again - Renamed document dialog to new naming scheme, but do not compile and link it yet, pending conversion of document form to MVC by Angus git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1855 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/frontends/qt2/Dialogs.C | 6 +- src/frontends/qt2/FormDocument.C | 1256 +++++++-------- src/frontends/qt2/FormDocument.h | 269 ++-- ...entDialogBase.ui => FormDocumentDialog.ui} | 1348 ++++++++--------- ...umentDialog.C => FormDocumentDialogImpl.C} | 0 ...umentDialog.h => FormDocumentDialogImpl.h} | 12 +- src/frontends/qt2/Makefile.am | 2 +- src/frontends/qt2/Qt2Base.h | 14 +- src/frontends/qt2/dialogs-qt2.txt | 4 +- 9 files changed, 1459 insertions(+), 1452 deletions(-) rename src/frontends/qt2/{FormDocumentDialogBase.ui => FormDocumentDialog.ui} (92%) rename src/frontends/qt2/{FormDocumentDialog.C => FormDocumentDialogImpl.C} (100%) rename src/frontends/qt2/{FormDocumentDialog.h => FormDocumentDialogImpl.h} (85%) diff --git a/src/frontends/qt2/Dialogs.C b/src/frontends/qt2/Dialogs.C index 89b1d410f2..20d5e1e180 100644 --- a/src/frontends/qt2/Dialogs.C +++ b/src/frontends/qt2/Dialogs.C @@ -43,6 +43,7 @@ #include "BufferView.h" #include "controllers/ControlCopyright.h" +#include "GUI.h" #include "qt2BC.h" @@ -75,7 +76,8 @@ Dialogs::Dialogs(LyXView * lv) // REMOVED THIS UNTIL CHANGED TO NEW SCHEME -- Kalle, 2001-03-23 // add(new FormError(lv, this)); - add(new FormGraphics(lv, this)); + // REMOVED THIS UNTIL CHANGED TO NEW SCHEME -- Kalle, 2001-03-28 + // add(new FormGraphics(lv, this)); // add(new FormIndex(lv, this)); add(new FormParagraph(lv, this)); add(new FormPreferences(lv, this)); @@ -86,7 +88,7 @@ Dialogs::Dialogs(LyXView * lv) add(new FormTabularCreate(lv, this)); // add(new FormToc(lv, this)); // add(new FormUrl(lv, this)); - + // reduce the number of connections needed in // dialogs by a simple connection here. hideAll.connect(hideBufferDependent.slot()); diff --git a/src/frontends/qt2/FormDocument.C b/src/frontends/qt2/FormDocument.C index 3b2a53fcc3..94e4325600 100644 --- a/src/frontends/qt2/FormDocument.C +++ b/src/frontends/qt2/FormDocument.C @@ -1,11 +1,11 @@ /* This file is part of * ====================================================== - * + * * LyX, The Document Processor - * + * * Copyright 2000 The LyX Team. * - * @author Jürgen Vigna, Kalle Dalheimer + * @author Kalle Dalheimer * *======================================================*/ @@ -15,24 +15,18 @@ #pragma implementation #endif -#include "FormDocumentDialog.h" +#include "FormDocument.h" +#include "FormDocumentDialogImpl.h" #undef emit #include "lyx_gui_misc.h" -#include "gettext.h" -//#include FORMS_H_LOCATION -#include XPM_H_LOCATION -#include "FormDocument.h" -//#include "xform_macros.h" #include "Dialogs.h" #include "layout.h" -#include "combox.h" #include "tex-strings.h" #include "bufferparams.h" #include "insets/insetquotes.h" #include "vspace.h" -#include "bmtable.h" #include "support/filetools.h" #include "language.h" #include "LyXView.h" @@ -41,67 +35,20 @@ #include "Liason.h" #include "CutAndPaste.h" #include "bufferview_funcs.h" -#include "ButtonController.h" - -#ifdef SIGC_CXX_NAMESPACES -using SigC::slot; -#endif - -#ifdef CXX_WORKING_NAMESPACES -using Liason::setMinibuffer; -#endif - -#define USE_CLASS_COMBO 1 #include #include #include -#include -#include #include -#include -#include - -// Bullet images -#include "../../../lib/images/standard.xpm" -#include "../../../lib/images/psnfss1.xpm" -#include "../../../lib/images/psnfss2.xpm" -#include "../../../lib/images/psnfss3.xpm" -#include "../../../lib/images/psnfss4.xpm" -#include "../../../lib/images/amssymb.xpm" - - -FormDocument::FormDocument(LyXView * lv, Dialogs * d) - : FormBaseBD( lv, d, _( "Document Layout" ), - new NoRepeatedApplyReadOnlyPolicy ), - dialog_(0), lv_(lv), d_(d), u_(0), h_(0), - status(POPUP_UNMODIFIED) , - currentBulletPanel(0), - currentBulletDepth(0) -{ - // let the popup be shown - // This is a permanent connection so we won't bother - // storing a copy because we won't be disconnecting. - d->showLayoutDocument.connect(slot(this, &FormDocument::show)); - - // load the images - standardpix = new QPixmap( standard ); - amssymbpix = new QPixmap( amssymb ); - psnfss1pix = new QPixmap( psnfss1 ); - psnfss2pix = new QPixmap( psnfss2 ); - psnfss3pix = new QPixmap( psnfss3 ); - psnfss4pix = new QPixmap( psnfss4 ); -} +using Liason::setMinibuffer; +using SigC::slot; + +typedef Qt2CB > base_class; -FormDocument::~FormDocument() +FormDocument::FormDocument( ControlDocument& c ) + : base_class( c, _("Document Layout")) { - delete standardpix; - delete amssymbpix; - delete psnfss1pix; - delete psnfss2pix; - delete psnfss3pix; - delete psnfss4pix; } @@ -109,34 +56,165 @@ void FormDocument::build() { int n; - dialog_ = new FormDocumentDialog( this, 0, _( "Document Layout" ) ); - + // the tabbed folder + // PENDING(kalle) Parent??? + dialog_.reset( new FormDocumentDialogImpl()); + + // Manage the restore, ok, apply, restore and cancel/close buttons + bc().setOK(dialog_->okPB); + bc().setApply(dialog_->applyPB); + bc().setCancel(dialog_->cancelPB); + bc().setUndoAll(dialog_->restorePB); + bc().refresh(); + + // the document paper page + FormDocumentDialogImpl* dialog = dialog_.get(); + dialog->papersize2CO->insertItem( _( "Default" ) ); + dialog->papersize2CO->insertItem( _( "Custom" ) ); + dialog->papersize2CO->insertItem( _( "USletter" ) ); + dialog->papersize2CO->insertItem( _( "USlegal" ) ); + dialog->papersize2CO->insertItem( _( "USexecutive" ) ); + dialog->papersize2CO->insertItem( _( "A3" ) ); + dialog->papersize2CO->insertItem( _( "A4" ) ); + dialog->papersize2CO->insertItem( _( "A5" ) ); + dialog->papersize2CO->insertItem( _( "B3" ) ); + dialog->papersize2CO->insertItem( _( "B4" ) ); + dialog->papersize2CO->insertItem( _( "B5" ) ); + + dialog->paperPackageCO->insertItem( _( "None" ) ); + dialog->paperPackageCO->insertItem( _( "A4 small Margins (only portrait)" ) ); + dialog->paperPackageCO->insertItem( _( "A4 very small Margins (only portrait)" ) ); + dialog->paperPackageCO->insertItem( _( "A4 very wide margins (only portrait)" ) ); + + bc().addReadOnly (dialog->paperPackageCO); + bc().addReadOnly (dialog->orientationBG); + bc().addReadOnly (dialog->portraitRB); + bc().addReadOnly (dialog->landscapeRB); + bc().addReadOnly (dialog->papersize2CO); + bc().addReadOnly (dialog->useGeometryCB); + bc().addReadOnly (dialog->customWidthED); + bc().addReadOnly (dialog->customHeightED); + bc().addReadOnly (dialog->topMarginED); + bc().addReadOnly (dialog->bottomMarginED); + bc().addReadOnly (dialog->leftMarginED); + bc().addReadOnly (dialog->rightMarginED); + bc().addReadOnly (dialog->headHeightED); + bc().addReadOnly (dialog->headSepED); + bc().addReadOnly (dialog->footSkipED); + + // the document page for (LyXTextClassList::const_iterator cit = textclasslist.begin(); cit != textclasslist.end(); ++cit) - { - dialog_->classesCO->insertItem((*cit).description().c_str()); - } + { + docClassCO->insertItem( (*cit).description().c_str() ); + } + + dialog->docSpacingCO->insertItem( _( "Single" ) ); + dialog->docSpacingCO->insertItem( _( "OneHalf" ) ); + dialog->docSpacingCO->insertItem( _( "Double" ) ); + dialog->docSpacingCO->insertItem( _( "Other" ) ); + dialog->docFontSizeCO->insertItem( _( "default" ) ); + dialog->docFontSizeCO->insertItem( _( "10" ) ); + dialog->docFontSizeCO->insertItem( _( "11" ) ); + dialog->docFontSizeCO->insertItem( _( "12" ) ); for (n=0; tex_fonts[n][0]; ++n) { - dialog_->fontsCO->insertItem( tex_fonts[n] ); + dialog->docFontsCO->insertItem( tex_fonts[n] ); } - for(Languages::const_iterator cit = languages.begin(); - cit != languages.end(); ++cit) { - dialog_->languageCO->insertItem((*cit).second.lang().c_str()); + dialog->docPagestyleCO->insertItem( _( "default" ) ); + dialog->docPagestyleCO->insertItem( _( "empty" ) ); + dialog->docPagestyleCO->insertItem( _( "plain" ) ); + dialog->docPagestyleCO->insertItem( _( "headings" ) ); + dialog->docPagestyleCO->insertItem( _( "fancy" ) ); + + dialog->docSkipCO->insertItem( _( "Smallskip" ) ); + dialog->docSkipCO->insertItem( _( "Medskip" ) ); + dialog->docSkipCO->insertItem( _( "Bigskip" ) ); + dialog->docSkipCO->insertItem( _( "Length" ) ); + + bc().addReadOnly (dialog->docIndentRB); + bc().addReadOnly (dialog->docSkipRB); + + bc().addReadOnly (dialog->docPagestyleCO); + bc().addReadOnly (dialog->docFontsCO); + bc().addReadOnly (dialog->docFontsizeCO); + bc().addReadOnly (dialog->docSidesOneRB); + bc().addReadOnly (dialog->docSidesTwoRB); + bc().addReadOnly (dialog->docColumnsOneRB); + bc().addReadOnly (dialog->docColumnsTwoRB); + bc().addReadOnly (dialog->docExtraED); + bc().addReadOnly (dialog->docSkipED); + bc().addReadOnly (dialog->docSkipCO); + bc().addReadOnly (dialog->docSpacingCO); + bc().addReadOnly (dialog->docSpacingED); + + // the document language page + dialog->inputEncCO->insertItem( _( "default" ) ); + dialog->inputEncCO->insertItem( _( "auto" ) ); + dialog->inputEncCO->insertItem( _( "latin1" ) ); + dialog->inputEncCO->insertItem( _( "latin2" ) ); + dialog->inputEncCO->insertItem( _( "latin5" ) ); + dialog->inputEncCO->insertItem( _( "koi8-r" ) ); + dialog->inputEncCO->insertItem( _( "koi8-u" ) ); + dialog->inputEncCO->insertItem( _( "cp866" ) ); + dialog->inputEncCO->insertItem( _( "cp1251" ) ); + dialog->inputEncCO->insertItem( _( "iso88595" ) ); + + for (Languages::const_iterator cit = languages.begin(); + cit != languages.end(); ++cit) { + dialog->languageCO->insertItem( (*cit).second.lang() ); } + dialog->quotesLanguageCO->insertItem( _( "``text''" ) ); + dialog->quotesLanguageCO->insertItem( _( "''text''" ) ); + dialog->quotesLanguageCO->insertItem( _( ",,text``" ) ); + dialog->quotesLanguageCO->insertItem( _( ",,text''" ) ); + dialog->quotesLanguageCO->insertItem( _( "«text»" ) ); + dialog->quotesLanguageCO->insertItem( _( "»text«" ) ); + + bc().addReadOnly (dialog->inputEncCO); + + // the document options page + dialog->secNumDepthSB->setRange( -2, 5 ); + dialog->tocDepthSB->setRange( -1, 5 ); + dialog->secNumDepthSB->setSteps( 1, 1 ); + dialog->tocDepthSB->setRange( 1, 1 ); for (n=0; tex_graphics[n][0]; ++n) { - dialog_->psDriverCO->insertItem( tex_graphics[n] ); + dialog->postscriptDriverCO->insertItem( tex_graphics[n] ); } - dialog_->bulletDepth1PB->setOn( true ); + bc().addReadOnly (dialog->secNumDepthSB); + bc().addReadOnly (dialog->tocDepthSB); + bc().addReadOnly (dialog->useAmsMathCB); + bc().addReadOnly (dialog->floatPlacementED); + bc().addReadOnly (dialog->postscriptDriverCO); + + // the document bullets page + dialog->bulletSizeCO->insertItem( _( "default" ) ); + dialog->bulletSizeCO->insertItem( _( "tiny" ) ); + dialog->bulletSizeCO->insertItem( _( "script" ) ); + dialog->bulletSizeCO->insertItem( _( "footnote" ) ); + dialog->bulletSizeCO->insertItem( _( "small" ) ); + dialog->bulletSizeCO->insertItem( _( "normal" ) ); + dialog->bulletSizeCO->insertItem( _( "large" ) ); + dialog->bulletSizeCO->insertItem( _( "Large" ) ); + dialog->bulletSizeCO->insertItem( _( "LARGE" ) ); + dialog->bulletSizeCO->insertItem( _( "huge" ) ); + dialog->bulletSizeCO->insertItem( _( "Huge" ) ); + + dialog->bulletSizeCO->setCurrentItem( 0 ); + dialog->bulletLatexED->setMaxLength( 80 ); + + bc().addReadOnly (dialog->bulletPanelBG); + bc().addReadOnly (dialog->bulletSizeCO); + bc().addReadOnly (dialog->bulletLatexED); } void FormDocument::apply() { - if (!lv_->view()->available() || !dialog_) + if (!lv_->view()->available() || !dialog_.get()) return; bool redo = class_apply(); @@ -146,148 +224,243 @@ void FormDocument::apply() bullets_apply(); if (redo) { - lv_->view()->redoCurrentBuffer(); + lv_->view()->redoCurrentBuffer(); } lv_->buffer()->markDirty(); setMinibuffer(lv_, _("Document layout set")); } +void FormDocument::cancel() +{ + // this avoids confusion when reopening + BufferParams & param = lv_->buffer()->params; + param.temp_bullets[0] = param.user_defined_bullets[0]; + param.temp_bullets[1] = param.user_defined_bullets[1]; + param.temp_bullets[2] = param.user_defined_bullets[2]; + param.temp_bullets[3] = param.user_defined_bullets[3]; + hide(); +} + + +void FormDocument::update() +{ + if (!dialog_.get()) + return; + + checkReadOnly(); + + BufferParams const & params = lv_->buffer()->params; + + class_update(params); + paper_update(params); + language_update(params); + options_update(params); + bullets_update(params); +} + + +#ifdef K +bool FormDocument::input( FL_OBJECT * ob, long data ) +{ + State cb = static_cast( data ); + + switch (cb) { + case CHECKCHOICECLASS: + CheckChoiceClass(ob, 0); + break; + case CHOICEBULLETSIZE: + ChoiceBulletSize(ob, 0); + break; + case INPUTBULLETLATEX: + InputBulletLaTeX(ob, 0); + break; + case BULLETDEPTH1: + case BULLETDEPTH2: + case BULLETDEPTH3: + case BULLETDEPTH4: + BulletDepth(ob, cb); + break; + case BULLETPANEL1: + case BULLETPANEL2: + case BULLETPANEL3: + case BULLETPANEL4: + case BULLETPANEL5: + case BULLETPANEL6: + BulletPanel(ob, cb); + break; + case BULLETBMTABLE: + BulletBMTable(ob, 0); + break; + default: + break; + } + + switch (data) { + case INPUT: + case CHECKCHOICECLASS: + case CHOICEBULLETSIZE: + case INPUTBULLETLATEX: + case BULLETBMTABLE: + return CheckDocumentInput(ob, 0); + default: + break; + } + + return true; +} +#endif + + +#ifdef K +void FormDocument::ComboInputCB(int, void * v, Combox * combox) +{ + FormDocument * pre = static_cast(v); + if (combox == pre->combo_doc_class.get()) + pre->CheckChoiceClass(0, 0); + pre->bc().valid(pre->CheckDocumentInput(0,0)); +} +#endif + bool FormDocument::class_apply() { - bool redo = false; - BufferParams ¶ms = lv_->buffer()->params; - - // If default skip is a "Length" but there's no text in the - // input field, reset the kind to "Medskip", which is the default. - if( ( dialog_->defaultSkipCO->currentItem() == 4 ) && - ( dialog_->defaultSkipED->text().isEmpty() ) ) - dialog_->defaultSkipCO->setCurrentItem( 1 ); - params.fonts = dialog_->fontsCO->currentText(); - params.fontsize = dialog_->fontSizeCO->currentText(); - params.pagestyle = dialog_->pagestyleCO->currentText(); - - unsigned int new_class = dialog_->classesCO->currentItem(); - if (params.textclass != new_class) { - // try to load new_class - if (textclasslist.Load(new_class)) { - // successfully loaded - redo = true; - setMinibuffer(lv_, _("Converting document to new document class...")); - CutAndPaste cap; - int ret = cap.SwitchLayoutsBetweenClasses( - params.textclass, new_class, - lv_->buffer()->paragraph); - if (ret) { - string s; - if (ret==1) { - s = _("One paragraph couldn't be converted"); - } else { - s += tostr(ret); - s += _(" paragraphs couldn't be converted"); - } - WriteAlert(_("Conversion Errors!"),s, - _("into chosen document class")); - } - - params.textclass = new_class; + bool redo = false; + BufferParams ¶ms = lv_->buffer()->params; + + // If default skip is a "Length" but there's no text in the + // input field, reset the kind to "Medskip", which is the default. + if( ( dialog_->docSkipCO->currentItem() == 3 ) && + dialog_->docSkipED->text().isEmpty() ) + dialog_->docSkipCO->setCurrentItem( 1 ); + + params.fonts = dialog_->docFontsCO->currentText(); + params.fontsize = dialog_->docFontSizeCO->currentText(); + params.pagestyle = dialog->docPagestyleCO->currentText(); + + unsigned int const new_class = dialog_->docClassCO->currentItem(); + + if (params.textclass != new_class) { + // try to load new_class + if (textclasslist.Load(new_class)) { + // successfully loaded + redo = true; + setMinibuffer(lv_, _("Converting document to new document class...")); + CutAndPaste cap; + int ret = cap.SwitchLayoutsBetweenClasses( + params.textclass, new_class, + lv_->buffer()->paragraph); + if (ret) { + string s; + if (ret==1) { + s = _("One paragraph couldn't be converted"); } else { - // problem changing class -- warn user and retain old style - WriteAlert(_("Conversion Errors!"), - _("Errors loading new document class."), - _("Reverting to original document class.")); - dialog_->classesCO->setCurrentItem( params.textclass ); + s += tostr(ret); + s += _(" paragraphs couldn't be converted"); } + WriteAlert(_("Conversion Errors!"),s, + _("into chosen document class")); + } + + params.textclass = new_class; + } else { + // problem changing class -- warn user and retain old style + WriteAlert(_("Conversion Errors!"), + _("Errors loading new document class."), + _("Reverting to original document class.")); + dialog_->docClassCO->setCurrentItem( params.textclass ); } - char tmpsep = params.paragraph_separation; - if( dialog_->indentRB->isChecked() ) - params.paragraph_separation = BufferParams::PARSEP_INDENT; - else - params.paragraph_separation = BufferParams::PARSEP_SKIP; - if (tmpsep != params.paragraph_separation) - redo = true; - - VSpace tmpdefskip = params.getDefSkip(); - switch( dialog_->defaultSkipCO->currentItem() ) { - case 0: - params.setDefSkip(VSpace(VSpace::SMALLSKIP)); - break; - case 1: - params.setDefSkip(VSpace(VSpace::MEDSKIP)); - break; - case 2: - params.setDefSkip(VSpace(VSpace::BIGSKIP)); - break; - case 3: - params.setDefSkip - (VSpace(LyXGlueLength(dialog_->defaultSkipED->text().latin1()))); - break; - // DocumentDefskipCB assures that this never happens - default: - params.setDefSkip(VSpace(VSpace::MEDSKIP)); - break; - } - if (!(tmpdefskip == params.getDefSkip())) - redo = true; - - if( dialog_->twoColumnsRB->isChecked() ) - params.columns = 2; - else - params.columns = 1; - if( dialog_->twoSidesRB->isChecked() ) - params.sides = LyXTextClass::TwoSides; - else - params.sides = LyXTextClass::OneSide; - - Spacing tmpSpacing = params.spacing; - switch( dialog_->spacingCO->currentItem() ) { - case 0: - lyxerr[Debug::INFO] << "Spacing: SINGLE\n"; - params.spacing.set(Spacing::Single); - break; - case 1: - lyxerr[Debug::INFO] << "Spacing: ONEHALF\n"; - params.spacing.set(Spacing::Onehalf); - break; - case 2: - lyxerr[Debug::INFO] << "Spacing: DOUBLE\n"; - params.spacing.set(Spacing::Double); - break; - case 3: - lyxerr[Debug::INFO] << "Spacing: OTHER\n"; - params.spacing.set(Spacing::Other, - dialog_->defaultSkipED->text().latin1() ); - break; - } - if (tmpSpacing != params.spacing) - redo = true; - - params.options = dialog_->extraOptionsED->text(); - - return redo; + } + BufferParams::PARSEP tmpsep = params.paragraph_separation; + if( dialog_->_docIndentRB->isChecked() ) + params.paragraph_separation = BufferParams::PARSEP_INDENT; + else + params.paragraph_separation = BufferParams::PARSEP_SKIP; + if (tmpsep != params.paragraph_separation) + redo = true; + + VSpace tmpdefskip = params.getDefSkip(); + switch( dialog_->docSkipCO->currentItem() ) { + case 0: + params.setDefSkip(VSpace(VSpace::SMALLSKIP)); + break; + case 1: + params.setDefSkip(VSpace(VSpace::MEDSKIP)); + break; + case 2: + params.setDefSkip(VSpace(VSpace::BIGSKIP)); + break; + case 3: + params.setDefSkip + (VSpace(LyXGlueLength(dialog_->docSkipED->text()))); + break; + // DocumentDefskipCB assures that this never happens + default: + params.setDefSkip(VSpace(VSpace::MEDSKIP)); + break; + } + if (!(tmpdefskip == params.getDefSkip())) + redo = true; + + if( dialog_->docColumnsTwo->isChecked() ) + params.columns = 2; + else + params.columns = 1; + if( dialog_->docSidesTwo->isChecked() ) + params.sides = LyXTextClass::TwoSides; + else + params.sides = LyXTextClass::OneSide; + + Spacing tmpSpacing = params.spacing; + switch( dialog_->docSpacingCO->currentItem() ) { + case 0: + lyxerr[Debug::INFO] << "Spacing: SINGLE\n"; + params.spacing.set(Spacing::Single); + break; + case 1: + lyxerr[Debug::INFO] << "Spacing: ONEHALF\n"; + params.spacing.set(Spacing::Onehalf); + break; + case 2: + lyxerr[Debug::INFO] << "Spacing: DOUBLE\n"; + params.spacing.set(Spacing::Double); + break; + case 3: + lyxerr[Debug::INFO] << "Spacing: OTHER\n"; + params.spacing.set(Spacing::Other, + dialog_->docSpacingED->text() ); + break; + } + if (tmpSpacing != params.spacing) + redo = true; + + params.options = docExtraED->text(); + + return redo; } void FormDocument::paper_apply() { BufferParams & params = lv_->buffer()->params; - - params.papersize2 = dialog_->papersizeCO->currentItem(); - params.paperpackage = dialog_->specialCO->currentItem(); - params.use_geometry = dialog_->CheckBox1->isChecked(); - if( dialog_->landscapeRB->isChecked() ) + + params.papersize2 = + static_cast(dialog_->papersize2CO->currentItem()); + params.paperpackage = + static_cast(dialog_->paperPackageCO->currentItem() ); + params.use_geometry = dialog_->useGeometryCB->isChecked(); + if (dialog_->landscapeRB->isChecked() ) params.orientation = BufferParams::ORIENTATION_LANDSCAPE; else params.orientation = BufferParams::ORIENTATION_PORTRAIT; params.paperwidth = dialog_->customWidthED->text(); params.paperheight = dialog_->customHeightED->text(); - params.leftmargin = dialog_->marginLeftED->text(); - params.topmargin = dialog_->marginTopED->text(); - params.rightmargin = dialog_->marginRightED->text(); - params.bottommargin = dialog_->marginBottomED->text(); - params.headheight = dialog_->headheightED->text(); - params.headsep = dialog_->headsepED->text(); - params.footskip = dialog_->footskipED->text(); + params.leftmargin = dialog_->leftMarginED->text(); + params.topmargin = dialog_->topMarginED->text(); + params.rightmargin = dialog_->rightMarginED->text(); + params.bottommargin = dialog_->bottomMarginED->text(); + params.headheight = dialog_->headHeightED->text(); + params.headsep = dialog_->headSepED->text(); + params.footskip = dialog_->footSkipED->text(); lv_->buffer()->setPaperStuff(); } @@ -298,7 +471,7 @@ bool FormDocument::language_apply() InsetQuotes::quote_language lga = InsetQuotes::EnglishQ; bool redo = false; - switch( dialog_->quoteStyleTypeCO->currentItem() ) { + switch (dialog_->quotesLanguageCO->currentItem() ) { case 0: lga = InsetQuotes::EnglishQ; break; @@ -319,16 +492,16 @@ bool FormDocument::language_apply() break; } params.quotes_language = lga; - if( dialog_->quoteStyleSingleRB->isChecked() ) + if (dialog_->singleRB->isChecked() ) params.quotes_times = InsetQuotes::SingleQ; else params.quotes_times = InsetQuotes::DoubleQ; Language const * old_language = params.language; Language const * new_language = - languages.getLanguage( dialog_->languageCO->currentText().latin1() ); - if( !new_language ) - new_language = default_language; + languages.getLanguage(dialog_->languageCO->currentItem() ); + if (!new_language) + new_language = default_language; if (old_language != new_language && old_language->RightToLeft() == new_language->RightToLeft() @@ -338,7 +511,7 @@ bool FormDocument::language_apply() redo = true; } params.language = new_language; - params.inputenc = dialog_->encodingCO->currentText(); + params.inputenc = dialog_->inputEncCO->currentText(); return redo; } @@ -350,18 +523,18 @@ bool FormDocument::options_apply() bool redo = false; params.graphicsDriver = - dialog_->psDriverCO->currentText(); - params.use_amsmath = dialog_->amsMathCB->isChecked(); + dialog_->postscriptDriverCO->currentText(); + params.use_amsmath = dialog_->useAmsMathCB->isChecked(); - int tmpchar = dialog_->sectionNumberDepthSB->value(); + int tmpchar = int(dialog_->secNumDepth->value() ); if (params.secnumdepth != tmpchar) redo = true; params.secnumdepth = tmpchar; - - params.tocdepth = dialog_->tocDepthSB->value(); + + params.tocdepth = int(dialog_->tocDepth->value() ); params.float_placement = - dialog_->floatPlacementED->text(); + dialog_->floatPlacementED->text(); return redo; } @@ -371,7 +544,7 @@ void FormDocument::bullets_apply() { /* update the bullet settings */ BufferParams & param = lv_->buffer()->params; - + // a little bit of loop unrolling param.user_defined_bullets[0] = param.temp_bullets[0]; param.user_defined_bullets[1] = param.temp_bullets[1]; @@ -380,322 +553,210 @@ void FormDocument::bullets_apply() } -void FormDocument::cancel() -{ - // this avoids confusion when reopening - BufferParams & param = lv_->buffer()->params; - param.temp_bullets[0] = param.user_defined_bullets[0]; - param.temp_bullets[1] = param.user_defined_bullets[1]; - param.temp_bullets[2] = param.user_defined_bullets[2]; - param.temp_bullets[3] = param.user_defined_bullets[3]; -} - - -void FormDocument::update() +void FormDocument::class_update(BufferParams const & params) { - if (!dialog_) + if (!class_.get()) return; - checkReadOnly(); - - BufferParams const & params = lv_->buffer()->params; - - class_update(params); - paper_update(params); - language_update(params); - options_update(params); - bullets_update(params); -} - - -void FormDocument::class_update(BufferParams const & params) -{ LyXTextClass const & tclass = textclasslist.TextClass(params.textclass); - for( int i = 0; i < dialog_->classesCO->count(); i++ ) - if( dialog_->classesCO->text( i ) == textclasslist.DescOfClass( params.textclass ).c_str() ) - dialog_->classesCO->setCurrentItem( i ); - - for( int i = 0; i < dialog_->fontsCO->count(); i++ ) - if( dialog_->fontsCO->text( i ) == params.fonts.c_str() ) - dialog_->fontsCO->setCurrentItem( i ); - - dialog_->fontSizeCO->clear(); - dialog_->fontSizeCO->insertItem( _("default") ); - dialog_->fontSizeCO->insertStringList( QStringList::split( "|", tclass.opt_fontsize().c_str() ) ); - for( int i = 0; i < dialog_->fontSizeCO->count(); i++ ) - if( dialog_->fontSizeCO->text( i ) == - tokenPos(tclass.opt_fontsize(), '|', params.fontsize)+2) - dialog_->fontSizeCO->setCurrentItem( i ); - - dialog_->pagestyleCO->clear(); - dialog_->pagestyleCO->insertItem( _("default") ); - dialog_->pagestyleCO->insertStringList( QStringList::split( "|", tclass.opt_pagestyle().c_str() ) ); - for( int i = 0; i < dialog_->pagestyleCO->count(); i++ ) - if( dialog_->pagestyleCO->text( i ) == - tokenPos(tclass.opt_pagestyle(), '|', params.pagestyle)+2) - dialog_->pagestyleCO->setCurrentItem( i ); - - if (params.paragraph_separation == BufferParams::PARSEP_INDENT) { - dialog_->indentRB->setChecked( true ); - dialog_->skipRB->setChecked( false ); - } else { - dialog_->skipRB->setChecked( true ); - dialog_->indentRB->setChecked( false ); - } + combo_doc_class->select_text( + textclasslist.DescOfClass(params.textclass)); + Qt2Helper::setCurrentComboItem( dialog_->docFonts, params.fonts.c_str() ); + dialog_->docFontSizeCO->clear(); + dialog_->docFontSizeCO->insertItem( _( "default" ) ); + dialog_->docFontSizeCO->insertItem( tclass.opt_fontsize().c_str()); + dialog_->docFontSizeCO->setCurrentItem( tokenPos(tclass.opt_fontsize(), '|', params.fontsize)+1); + dialog_->docPagestyleCO->clear(); + dialog_->docPagestyleCO->insertItem( _( "default" ) ); + dialog_->docPagestyleCO->insertItem( tclass.opt_pagestyle().c_str()); + dialog_->docPagestyleCO->setCurrentItem( tokenPos(tclass.opt_pagestyle(), '|', params.pagestyle)+1); + dialog_->docIndentRB->setChecked( false ); + dialog_->docSkipRB->setChecked( false ); + if (params.paragraph_separation == BufferParams::PARSEP_INDENT) + dialog_->docIndentRB->setChecked( true ); + else + dialog_->docSkipRB->setChecked( true ); switch (params.getDefSkip().kind()) { - case VSpace::SMALLSKIP: - dialog_->defaultSkipCO->setCurrentItem( 0 ); + case VSpace::SMALLSKIP: + dialog_->docSkipCO->setCurrentItem( 0 ); break; - case VSpace::MEDSKIP: - dialog_->defaultSkipCO->setCurrentItem( 1 ); + case VSpace::MEDSKIP: + dialog_->docSkipCO->setCurrentItem( 1 ); break; - case VSpace::BIGSKIP: - dialog_->defaultSkipCO->setCurrentItem( 2 ); + case VSpace::BIGSKIP: + dialog_->docSkipCO->setCurrentItem( 2 ); break; - case VSpace::LENGTH: - dialog_->defaultSkipCO->setCurrentItem( 3 ); - dialog_->defaultSkipED->setText( params.getDefSkip().asLyXCommand().c_str() ); + case VSpace::LENGTH: + dialog_->docSkipCO->setCurrentItem( 3 ); + dialog_->docSkipED->setText( params.getDefSkip().asLyXCommand().c_str()); break; default: - dialog_->defaultSkipCO->setCurrentItem( 1 ); + dialog_->docSkipCO->setCurrentItem( 1 ); break; } - - if( params.sides == 2 ) { - dialog_->twoSidesRB->setChecked( true ); - dialog_->oneSideRB->setChecked( false ); - } else { - dialog_->twoSidesRB->setChecked( false ); - dialog_->oneSideRB->setChecked( true ); - } - - if( params.columns == 2 ) { - dialog_->twoColumnsRB->setChecked( true ); - dialog_->oneColumnRB->setChecked( false ); - } else { - dialog_->twoColumnsRB->setChecked( false ); - dialog_->oneColumnRB->setChecked( true ); - } - - dialog_->spacingED->setText( "" ); + dialog_->docSidesOneRB->setChecked( false ); + dialog_->docSidesTwoRB->setChecked( false ); + if (params.sides == LyXTextClass::TwoSides) + dialog_->docSidesTwo->setChecked( true ); + else + dialog_->docSidesOne->setChecked( true ); + dialog_->docColumnsOneRB->setChecked( false ); + dialog_->docColumnsTwoRB->setChecked( false ); + if (params.columns == 2) + dialog_->docColumnsTwoRB->setChecked( true ); + else + dialog_->docColumnsOneRB->setChecked( true ); + dialog_->docSpacingED->setText( "" ); switch (params.spacing.getSpace()) { case Spacing::Default: // nothing bad should happen with this case Spacing::Single: - // \singlespacing - dialog_->spacingCO->setCurrentItem( 0 ); - break; + // \singlespacing + dialog_->docSpacingCO->setCurrentItem( 0 ); + break; case Spacing::Onehalf: - // \onehalfspacing - dialog_->spacingCO->setCurrentItem( 1 ); - break; + // \onehalfspacing + dialog_->docSpacingCO->setCurrentItem( 1 ); + break; case Spacing::Double: - // \doublespacing - dialog_->spacingCO->setCurrentItem( 2 ); - break; - case Spacing::Other: - { - dialog_->spacingCO->setCurrentItem( 3 ); - QString sval; - sval.sprintf("%g",params.spacing.getValue()); - dialog_->spacingED->setText( sval ); + // \doublespacing + dialog_->docSpacingCO->setCurrentItem( 2 ); break; - } + case Spacing::Other: + { + dialog_->docSpacingCO->setCurrentItem( 3 ); + QString sval; + sval.sprintf("%g",params.spacing.getValue()); + dialog_->docSpacingED->setText( sval ); + break; + } } if (!params.options.empty()) - dialog_->extraOptionsED->setText( params.options.c_str()); + dialog_->docExtraED->setText(, params.options.c_str()); else - dialog_->extraOptionsED->setText( "" ); + dialog_->docExtraED->setText( "" ); } void FormDocument::language_update(BufferParams const & params) { - for( int i = 0; i < dialog_->languageCO->count(); i++ ) - if( dialog_->languageCO->text( i ) == params.language->lang().c_str() ) - dialog_->languageCO->setCurrentItem( i ); - - - for( int i = 0; i < dialog_->encodingCO->count(); i++ ) - if( dialog_->encodingCO->text( i ) == params.inputenc.c_str() ) - dialog_->encodingCO->setCurrentItem( i ); - - dialog_->quoteStyleTypeCO->setCurrentItem( params.quotes_language ); + if (!language_.get()) + return; - if( params.quotes_times == InsetQuotes::SingleQ ) { - dialog_->quoteStyleSingleRB->setChecked( true ); - dialog_->quoteStyleDoubleRB->setChecked( false ); - } else { - dialog_->quoteStyleSingleRB->setChecked( false ); - dialog_->quoteStyleDoubleRB->setChecked( true ); - } + Qt2Helper::setCurrentItemText( dialog_->languageCO, params.language->lang() ); + Qt2Helper::setCurrentItemText( dialog_->inputEncCO, params.inputenc.c_str() ); + dialog_->quotesLanguageCO->setCurrentItem( params.quotes_language ); + dialog_->singleRB->setChecked( false ); + dialog_->doubleRB->setChecked( false ); + if (params.quotes_times == InsetQuotes::SingleQ) + dialog_->singleRB->setChecked( true ); + else + dialog_->doubleRB->setChecked( true ); } void FormDocument::options_update(BufferParams const & params) { - for( int i = 0; i < dialog_->psDriverCO->count(); i++ ) - if( dialog_->psDriverCO->text( i ) == params.graphicsDriver.c_str() ) - dialog_->psDriverCO->setCurrentItem( i ); - - dialog_->amsMathCB->setChecked( params.use_amsmath ); - dialog_->sectionNumberDepthSB->setValue( params.secnumdepth ); - dialog_->tocDepthSB->setValue( params.tocdepth ); + if (!options_.get()) + return; + Qt2Helper::setCurrentItemText( dialog_->postscriptDriverCO, + params.graphicsDriver.c_str()); + dialog_->useAmsMathCB->setChecked( params.use_amsmath ); + dialog_->secNumDepthSB->setValue( params.secnumdepth ); + dialog_->setTocDepthSB->setValue( params.tocdepth ); if (!params.float_placement.empty()) - dialog_->floatPlacementED->setText( params.float_placement.c_str()); + dialog_->floatPlacementED->setText( params.float_placement.c_str()); else - dialog_->floatPlacementED->setText( "" ); + dialog_->floatPlacementED->setText( "" ); } void FormDocument::paper_update(BufferParams const & params) { - dialog_->papersizeCO->setCurrentItem( params.papersize2 ); - dialog_->specialCO->setCurrentItem( params.paperpackage ); - dialog_->CheckBox1->setChecked( params.use_geometry ); - - if (params.orientation == BufferParams::ORIENTATION_LANDSCAPE) { - dialog_->landscapeRB->setChecked( true ); - dialog_->portraitRB->setChecked( false ); - } else { - dialog_->landscapeRB->setChecked( false ); - dialog_->portraitRB->setChecked( true ); - } + if (!paper_.get()) + return; + dialog_->papersize2CO->setCurrentItem( params.papersize2 ); + dialog_->paperPackageCO->setCurrentItem( params.paperpackage ); + dialog_->useGeometryCB->setChecked( params.use_geometry ); + dialog_->portraitRB->setChecked( false ); + dialog_->landscapeRB->setChecked( false ); + if (params.orientation == BufferParams::ORIENTATION_LANDSCAPE) + dialog_->landscapeRB->setChecked( true ); + else + dialog_->portraitRB->setChecked( true ); dialog_->customWidthED->setText( params.paperwidth.c_str()); dialog_->customHeightED->setText( params.paperheight.c_str()); - dialog_->marginLeftED->setText( params.leftmargin.c_str()); - dialog_->marginTopED->setText( params.topmargin.c_str()); - dialog_->marginRightED->setText( params.rightmargin.c_str()); - dialog_->marginBottomED->setText( params.bottommargin.c_str()); - dialog_->headheightED->setText( params.headheight.c_str()); - dialog_->headsepED->setText( params.headsep.c_str()); - dialog_->footskipED->setText( params.footskip.c_str()); - dialog_->papersizeCO->setFocus(); + dialog_->leftMarginED->setText( params.leftmargin.c_str()); + dialog_->topMarginED->setText( params.topmargin.c_str()); + dialog_->rightMarginED->setText( params.rightmargin.c_str()); + dialog_->bottomMarginED->setText( params.bottommargin.c_str()); + dialog_->headHeightED->setText( params.headheight.c_str()); + dialog_->headSepED->setText( params.headsep.c_str()); + dialog_->footSkipED->setText( params.footskip.c_str()); + dialog_->papersize2CO->setFocus(); } void FormDocument::bullets_update(BufferParams const & params) { - if (lv_->buffer()->isLinuxDoc()) { - dialog_->bulletTypeBG->setEnabled( false ); - dialog_->bulletDepth1PB->setEnabled( false ); - dialog_->bulletDepth2PB->setEnabled( false ); - dialog_->bulletDepth3PB->setEnabled( false ); - dialog_->bulletDepth4PB->setEnabled( false ); - dialog_->bulletSizeCO->setEnabled( false ); - dialog_->latexED->setEnabled( false ); - return; - } else { - dialog_->bulletTypeBG->setEnabled( true ); - dialog_->bulletDepth1PB->setEnabled( true ); - dialog_->bulletDepth2PB->setEnabled( true ); - dialog_->bulletDepth3PB->setEnabled( true ); - dialog_->bulletDepth4PB->setEnabled( true ); - dialog_->bulletSizeCO->setEnabled( true ); - dialog_->latexED->setEnabled( true ); - } - if (lv_->buffer()->isReadonly()) { - dialog_->bulletTypeBG->setEnabled( false ); - dialog_->bulletSizeCO->setEnabled( false ); - dialog_->latexED->setEnabled( false ); - } else { - dialog_->bulletTypeBG->setEnabled( true ); - dialog_->bulletSizeCO->setEnabled( true ); - dialog_->latexED->setEnabled( true ); - } - - dialog_->bulletDepth1PB->setOn( true ); - dialog_->latexED->setText( params.user_defined_bullets[0].getText().c_str()); - dialog_->bulletSizeCO->setCurrentItem( params.user_defined_bullets[0].getSize() + 1); - dialog_->bulletStandardPB->setOn( false ); - dialog_->bulletMathsPB->setOn( false ); - dialog_->bulletDing1PB->setOn( false ); - dialog_->bulletDing2PB->setOn( false ); - dialog_->bulletDing3PB->setOn( false ); - dialog_->bulletDing4PB->setOn( false ); - switch( params.user_defined_bullets[0].getFont() ) { - case 0: - dialog_->bulletStandardPB->setOn( true ); - break; - case 1: - dialog_->bulletMathsPB->setOn( true ); - break; - case 2: - dialog_->bulletDing1PB->setOn( true ); - break; - case 3: - dialog_->bulletDing2PB->setOn( true ); - break; - case 4: - dialog_->bulletDing3PB->setOn( true ); - break; - case 5: - dialog_->bulletDing4PB->setOn( true ); - break; - default: - // should not happen - dialog_->bulletStandardPB->setOn( true ); - } -} + bool const isLinuxDoc = lv_->buffer()->isLinuxDoc(); + setEnabled(fbullet, !isLinuxDoc); + if (isLinuxDoc) return; -void FormDocument::free() -{ - if (dialog_) { - hide(); - delete dialog_; - dialog_ = 0; - } + dialog_->bulletDepth1RB->setChecked( true ); + dialog_->bulletLatexED->setText( params.user_defined_bullets[0].getText().c_str()); + dialog_->bulletSizeCO->setCurrentItem( params.user_defined_bullets[0].getSize() + 1); } void FormDocument::checkReadOnly() { - if (bc_.readOnly(lv_->buffer()->isReadonly())) { - dialog_->classesCO->setEnabled( false ); - dialog_->languageCO->setEnabled( false ); - dialog_->warningLA->setText( _("Document is read-only." - " No changes to layout permitted.")); - dialog_->warningLA->show(); + if (bc().readOnly(lv_->buffer()->isReadonly())) { + dialog_->docClassCO->setEnabled( false ); + dialog_->languageCO->setEnabled( false ); + dialog_->warningLA->setText( _("Document is read-only." + " No changes to layout permitted.")); + dialog_->warningLA->show(); } else { - dialog_->classesCO->setEnabled( true ); - dialog_->languageCO->setEnabled( true ); - dialog_->warningLA->hide(); - } + dialog_->docClassCO->setEnabled( true ); + dialog_->languageCO->setEnabled( true ); + dialog_->warningLA->hide(); + } } void FormDocument::checkMarginValues() { - const int allEmpty = - dialog_->marginTopED->text().isEmpty() && - dialog_->marginBottomED->text().isEmpty() && - dialog_->marginLeftED->text().isEmpty() && - dialog_->marginRightED->text().isEmpty() && - dialog_->headheightED->text().isEmpty() && - dialog_->headsepED->text().isEmpty() && - dialog_->footskipED->text().isEmpty() && - dialog_->customWidthED->text().isEmpty() && - dialog_->customHeightED->text().isEmpty(); - if (!allEmpty) - dialog_->CheckBox1->setChecked( true ); + bool const not_empty = + !dialog_->topMarginED->text().isEmpty() || + !dialog_->bottomMarginED->text().isEmpty() || + !dialog_->leftMarginED->text().isEmpty() || + !dialog_->rightMarginED->text().isEmpty() || + !dialog_->headHeightED->text().isEmpty() || + !dialog_->headSepED->text().isEmpty() || + !dialog_->footSkipED->text().isEmpty() || + !dialog_->customWidthED->text().isEmpty() || + !dialog_->customHeightED->text().isEmpty(); + if (not_empty) + dialog_->useGeometryCB->setChecked( true ); } -bool FormDocument::checkDocumentInput(QWidget* w) +#ifdef K +bool FormDocument::CheckDocumentInput(FL_OBJECT * ob, long) { string str; - char val; + int val; bool ok = true; - QString input; - - checkMarginValues(); - if (w == dialog_->papersizeCO) { - val = dialog_->papersizeCO->currentItem(); + char const * input; + checkMarginValues(); + if (ob == paper_->choice_papersize2) { + val = fl_get_choice(paper_->choice_papersize2)-1; if (val == BufferParams::VM_PAPER_DEFAULT) { - dialog_->CheckBox1->setChecked( false ); + fl_set_button(paper_->push_use_geometry, 0); checkMarginValues(); } else { if ((val != BufferParams::VM_PAPER_USLETTER) && @@ -704,94 +765,97 @@ bool FormDocument::checkDocumentInput(QWidget* w) (val != BufferParams::VM_PAPER_A4) && (val != BufferParams::VM_PAPER_A5) && (val != BufferParams::VM_PAPER_B5)) { - dialog_->CheckBox1->setChecked( true ); + fl_set_button(paper_->push_use_geometry, 1); } - dialog_->specialCO->setCurrentItem( BufferParams::PACKAGE_NONE ); + fl_set_choice(paper_->choice_paperpackage, + BufferParams::PACKAGE_NONE + 1); } - } else if (w == dialog_->specialCO ) { - val = dialog_->specialCO->currentItem(); - if (val != BufferParams::PACKAGE_NONE) { - dialog_->papersizeCO->setCurrentItem( BufferParams::VM_PAPER_DEFAULT ); - dialog_->CheckBox1->setChecked( false ); - } - } else if (w == dialog_->spacingED) { - input = dialog_->spacingED->text(); - if (input.isEmpty()) { - dialog_->spacingCO->setCurrentItem( 0 ); + } else if (ob == paper_->choice_paperpackage) { + val = fl_get_choice(paper_->choice_paperpackage)-1; + if (val != BufferParams::PACKAGE_NONE) { + fl_set_choice(paper_->choice_papersize2, + BufferParams::VM_PAPER_DEFAULT + 1); + fl_set_button(paper_->push_use_geometry, 0); + } + } else if (ob == class_->input_doc_spacing) { + input = fl_get_input(class_->input_doc_spacing); + if (!*input) { + fl_set_choice (class_->choice_doc_spacing, 1); } else { - dialog_->spacingCO->setCurrentItem( 3 ); + fl_set_choice(class_->choice_doc_spacing, 4); } } // this has to be all out of if/elseif because it has to deactivate // the document buttons and so the whole stuff has to be tested again. - str = dialog_->customWidthED->text(); + str = fl_get_input(paper_->input_custom_width); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->customHeightED->text(); + str = fl_get_input(paper_->input_custom_height); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->marginLeftED->text(); + str = fl_get_input(paper_->input_left_margin); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->marginRightED->text(); + str = fl_get_input(paper_->input_right_margin); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->marginTopED->text(); + str = fl_get_input(paper_->input_top_margin); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->marginBottomED->text(); + str = fl_get_input(paper_->input_bottom_margin); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->headheightED->text(); + str = fl_get_input(paper_->input_head_height); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->headsepED->text(); + str = fl_get_input(paper_->input_head_sep); ok = ok && (str.empty() || isValidLength(str)); - str = dialog_->footskipED->text(); + str = fl_get_input(paper_->input_foot_skip); ok = ok && (str.empty() || isValidLength(str)); // "Synchronize" the choice and the input field, so that it // is impossible to commit senseless data. - input = dialog_->defaultSkipED->text(); - if (w == dialog_->defaultSkipED) { - if (input.isEmpty()) { - dialog_->defaultSkipCO->setCurrentItem( 1 ); - } else if (isValidGlueLength (input.latin1())) { - dialog_->defaultSkipCO->setCurrentItem( 3 ); + input = fl_get_input (class_->input_doc_skip); + if (ob == class_->input_doc_skip) { + if (!*input) { + fl_set_choice (class_->choice_doc_skip, 2); + } else if (isValidGlueLength (input)) { + fl_set_choice (class_->choice_doc_skip, 4); } else { - dialog_->defaultSkipCO->setCurrentItem( 3 ); + fl_set_choice(class_->choice_doc_skip, 4); ok = false; } } else { - if (!input.isEmpty() && !isValidGlueLength(input.latin1())) + if (*input && !isValidGlueLength(input)) ok = false; } - if(( dialog_->defaultSkipCO->currentItem() == 3 ) && input.isEmpty() ) + if ((fl_get_choice(class_->choice_doc_skip) == 4) && !*input) ok = false; - else if( dialog_->defaultSkipCO->currentItem() != 3 ) - dialog_->defaultSkipED->setText( "" ); + else if (fl_get_choice(class_->choice_doc_skip) != 4) + fl_set_input (class_->input_doc_skip, ""); - input = dialog_->spacingED->text(); - if( ( dialog_->spacingCO->currentItem() == 3 ) && input.isEmpty() ) + input = fl_get_input(class_->input_doc_spacing); + if ((fl_get_choice(class_->choice_doc_spacing) == 4) && !*input) ok = false; - else if( dialog_->spacingCO->currentItem() != 3 ) - dialog_->spacingED->setText( "" ); + else if (fl_get_choice(class_->choice_doc_spacing) != 4) + fl_set_input (class_->input_doc_spacing, ""); return ok; } -void FormDocument::choiceBulletSize() +void FormDocument::ChoiceBulletSize(FL_OBJECT * ob, long /*data*/ ) { BufferParams & param = lv_->buffer()->params; - // convert from 0-5 range to -1-4 - param.temp_bullets[currentBulletDepth].setSize(dialog_->bulletSizeCO->currentItem() - 1); - dialog_->latexED->setText( param.temp_bullets[currentBulletDepth].getText().c_str()); + // convert from 1-6 range to -1-4 + param.temp_bullets[current_bullet_depth].setSize(fl_get_choice(ob) - 2); + fl_set_input(bullets_->input_bullet_latex, + param.temp_bullets[current_bullet_depth].getText().c_str()); } -void FormDocument::inputBulletLaTeX() +void FormDocument::InputBulletLaTeX(FL_OBJECT *, long) { BufferParams & param = lv_->buffer()->params; - param.temp_bullets[currentBulletDepth]. - setText(dialog_->latexED->text().latin1() ); + param.temp_bullets[current_bullet_depth]. + setText(fl_get_input(bullets_->input_bullet_latex)); } -void FormDocument::bulletDepth(int depth) +void FormDocument::BulletDepth(FL_OBJECT * ob, State cb) { /* Should I do the following: */ /* 1. change to the panel that the current bullet belongs in */ @@ -803,120 +867,126 @@ void FormDocument::bulletDepth(int depth) /* maybe try to support the others later */ BufferParams & param = lv_->buffer()->params; - // reset on right mouse button not supported in KLyX - // right mouse button resets to default - param.temp_bullets[depth] = ITEMIZE_DEFAULTS[depth]; - dialog_->latexED->setText( param.temp_bullets[depth].getText().c_str()); - dialog_->bulletSizeCO->setCurrentItem( param.temp_bullets[depth].getSize() + 1 ); - - currentBulletDepth = depth; + int data = 0; + if (cb == BULLETDEPTH1 ) + data = 0; + else if (cb == BULLETDEPTH2 ) + data = 1; + else if (cb == BULLETDEPTH3 ) + data = 2; + else if (cb == BULLETDEPTH4 ) + data = 3; + + switch (fl_get_button_numb(ob)) { + case 3: + // right mouse button resets to default + param.temp_bullets[data] = ITEMIZE_DEFAULTS[data]; + default: + current_bullet_depth = data; + fl_set_input(bullets_->input_bullet_latex, + param.temp_bullets[data].getText().c_str()); + fl_set_choice(bullets_->choice_bullet_size, + param.temp_bullets[data].getSize() + 2); + } } -// PENDING(kalle) Call this. -void FormDocument::setBulletPics() +void FormDocument::BulletPanel(FL_OBJECT * /*ob*/, State cb) { - QPixmap* currentpix = 0; - if( dialog_->bulletStandardPB->isOn() ) { - currentpix = standardpix; - currentBulletPanel = 0; - } else if( dialog_->bulletMathsPB->isOn() ) { - currentpix = amssymbpix; - currentBulletPanel = 1; - } else if( dialog_->bulletDing1PB->isOn() ) { - currentpix = psnfss1pix; - currentBulletPanel = 2; - } else if( dialog_->bulletDing2PB->isOn() ) { - currentpix = psnfss2pix; - currentBulletPanel = 3; - } else if( dialog_->bulletDing3PB->isOn() ) { - currentpix = psnfss3pix; - currentBulletPanel = 4; - } else if( dialog_->bulletDing4PB->isOn() ) { - currentpix = psnfss4pix; - currentBulletPanel = 5; - } - - for( int x = 0; x < 6; x++ ) - for( int y = 0; y < 6; y++ ) { - bulletpics[x*6+y].resize( 44, 29 ); - bitBlt( &bulletpics[x*6+y], 0, 0, currentpix, x*44, y*29, 44, 29 ); + /* Here we have to change the background pixmap to that selected */ + /* by the user. (eg. standard.xpm, psnfss1.xpm etc...) */ + + int data = 0; + if (cb == BULLETPANEL1 ) + data = 0; + else if (cb == BULLETPANEL2 ) + data = 1; + else if (cb == BULLETPANEL3 ) + data = 2; + else if (cb == BULLETPANEL4 ) + data = 3; + else if (cb == BULLETPANEL5 ) + data = 4; + else if (cb == BULLETPANEL6 ) + data = 5; + + if (data != current_bullet_panel) { + fl_freeze_form(bullets_->form); + current_bullet_panel = data; + + /* free the current pixmap */ + fl_free_bmtable_pixmap(bullets_->bmtable_bullet_panel); + string new_panel; + switch (cb) { + /* display the new one */ + case BULLETPANEL1 : + new_panel = "standard"; + break; + case BULLETPANEL2 : + new_panel = "amssymb"; + break; + case BULLETPANEL3 : + new_panel = "psnfss1"; + break; + case BULLETPANEL4 : + new_panel = "psnfss2"; + break; + case BULLETPANEL5 : + new_panel = "psnfss3"; + break; + case BULLETPANEL6 : + new_panel = "psnfss4"; + break; + default : + /* something very wrong happened */ + // play it safe for now but should be an exception + current_bullet_panel = 0; // standard panel + new_panel = "standard"; + break; + } + new_panel += ".xpm"; + fl_set_bmtable_pixmap_file(bullets_->bmtable_bullet_panel, 6, 6, + LibFileSearch("images", new_panel).c_str()); + fl_redraw_object(bullets_->bmtable_bullet_panel); + fl_unfreeze_form(bullets_->form); } - - // This is disgusting, but the only way since the designer does not - // support widget arrays. - dialog_->bullet00PB->setPixmap( bulletpics[0] ); - dialog_->bullet01PB->setPixmap( bulletpics[1] ); - dialog_->bullet02PB->setPixmap( bulletpics[2] ); - dialog_->bullet03PB->setPixmap( bulletpics[3] ); - dialog_->bullet04PB->setPixmap( bulletpics[4] ); - dialog_->bullet05PB->setPixmap( bulletpics[5] ); - dialog_->bullet10PB->setPixmap( bulletpics[6] ); - dialog_->bullet11PB->setPixmap( bulletpics[7] ); - dialog_->bullet12PB->setPixmap( bulletpics[8] ); - dialog_->bullet13PB->setPixmap( bulletpics[9] ); - dialog_->bullet14PB->setPixmap( bulletpics[10] ); - dialog_->bullet15PB->setPixmap( bulletpics[11] ); - dialog_->bullet20PB->setPixmap( bulletpics[12] ); - dialog_->bullet21PB->setPixmap( bulletpics[13] ); - dialog_->bullet22PB->setPixmap( bulletpics[14] ); - dialog_->bullet23PB->setPixmap( bulletpics[15] ); - dialog_->bullet24PB->setPixmap( bulletpics[16] ); - dialog_->bullet25PB->setPixmap( bulletpics[17] ); - dialog_->bullet30PB->setPixmap( bulletpics[18] ); - dialog_->bullet31PB->setPixmap( bulletpics[19] ); - dialog_->bullet32PB->setPixmap( bulletpics[20] ); - dialog_->bullet33PB->setPixmap( bulletpics[21] ); - dialog_->bullet34PB->setPixmap( bulletpics[22] ); - dialog_->bullet35PB->setPixmap( bulletpics[23] ); - dialog_->bullet40PB->setPixmap( bulletpics[24] ); - dialog_->bullet41PB->setPixmap( bulletpics[25] ); - dialog_->bullet42PB->setPixmap( bulletpics[26] ); - dialog_->bullet43PB->setPixmap( bulletpics[27] ); - dialog_->bullet44PB->setPixmap( bulletpics[28] ); - dialog_->bullet45PB->setPixmap( bulletpics[29] ); - dialog_->bullet50PB->setPixmap( bulletpics[30] ); - dialog_->bullet51PB->setPixmap( bulletpics[31] ); - dialog_->bullet52PB->setPixmap( bulletpics[32] ); - dialog_->bullet53PB->setPixmap( bulletpics[33] ); - dialog_->bullet54PB->setPixmap( bulletpics[34] ); - dialog_->bullet55PB->setPixmap( bulletpics[35] ); } -void FormDocument::bulletBMTable(int button) +void FormDocument::BulletBMTable(FL_OBJECT * ob, long /*data*/ ) { /* handle the user input by setting the current bullet depth's pixmap */ /* to that extracted from the current chosen position of the BMTable */ /* Don't forget to free the button's old pixmap first. */ BufferParams & param = lv_->buffer()->params; + int bmtable_button = fl_get_bmtable(ob); /* try to keep the button held down till another is pushed */ /* fl_set_bmtable(ob, 1, bmtable_button); */ - param.temp_bullets[currentBulletDepth].setFont(currentBulletPanel); - param.temp_bullets[currentBulletDepth].setCharacter(button); - dialog_->latexED->setText( param.temp_bullets[currentBulletDepth].getText().c_str()); + param.temp_bullets[current_bullet_depth].setFont(current_bullet_panel); + param.temp_bullets[current_bullet_depth].setCharacter(bmtable_button); + fl_set_input(bullets_->input_bullet_latex, + param.temp_bullets[current_bullet_depth].getText().c_str()); } -void FormDocument::checkChoiceClass(QComboBox* cb) +void FormDocument::CheckChoiceClass(FL_OBJECT * ob, long) { - if (!cb) - cb = dialog_->classesCO; + if (!ob) + ob = class_->choice_doc_class; ProhibitInput(lv_->view()); - int tc; - string tct; - - tc = cb->currentItem(); - tct = cb->currentText(); + unsigned int tc = combo_doc_class->get() - 1; if (textclasslist.Load(tc)) { - if (AskQuestion(_("Should I set some parameters to"), tct, - _("the defaults of this document class?"))) { - BufferParams & params = lv_->buffer()->params; + // we use a copy of the bufferparams because we do not + // want to modify them yet. + BufferParams params = lv_->buffer()->params; + if (params.textclass != tc + && AskQuestion(_("Should I set some parameters to"), + _("the defaults of this document class?"))) { params.textclass = tc; params.useClassDefaults(); UpdateLayoutDocument(params); @@ -926,17 +996,15 @@ void FormDocument::checkChoiceClass(QComboBox* cb) WriteAlert(_("Conversion Errors!"), _("Unable to switch to new document class."), _("Reverting to original document class.")); - - dialog_->classesCO->setCurrentItem( - lv_->buffer()->params.textclass ); + combo_doc_class->select(int(lv_->buffer()->params.textclass) + 1); } AllowInput(lv_->view()); } - +#endif void FormDocument::UpdateLayoutDocument(BufferParams const & params) { - if (!dialog_) + if (!dialog_.get()) return; checkReadOnly(); diff --git a/src/frontends/qt2/FormDocument.h b/src/frontends/qt2/FormDocument.h index 6317f595af..1515f9490f 100644 --- a/src/frontends/qt2/FormDocument.h +++ b/src/frontends/qt2/FormDocument.h @@ -1,165 +1,176 @@ // -*- C++ -*- /* This file is part of * ====================================================== - * + * * LyX, The Document Processor - * + * * Copyright (C) 2000 The LyX Team. * - * @author Jürgen Vigna, Kalle Dalheimer + * @author Kalle Dalheimer * *======================================================*/ #ifndef FORM_DOCUMENT_H #define FORM_DOCUMENT_H -#ifdef HAVE_CONFIG_H -#include -#endif -#include "FormBase.h" #include +#include + +#include "Qt2Base.h" +#include "qt2BC.h" +#undef emit #ifdef __GNUG_ #pragma interface #endif +class ControlDocument; +class FormDocumentDialogImpl; +class BufferParams; class LyXView; class Dialogs; -class Combox; -class BufferParams; - -class QWidget; -class FormDocumentDialog; - -#ifdef SIGC_CXX_NAMESPACES -using SigC::Connection; -#endif - -class QComboBox; - -#include /** This class provides an Qt2 implementation of the FormDocument Popup. The table-layout-form here changes values for latex-tabulars + @author Kalle Dalheimer */ -class FormDocument : public DialogBase { +class FormDocument + : public Qt2CB > +{ public: - /// #FormDocument x(Communicator ..., Popups ...);# - FormDocument(LyXView *, Dialogs *); - /// - ~FormDocument(); - /// - enum EnumPopupStatus { + /// #FormDocument x(Communicator ..., Popups ...);# + FormDocument(LyXView *, Dialogs *); +private: /// - POPUP_UNMODIFIED, + enum State { + /// + INPUT, + /// + CHECKCHOICECLASS, + /// + CHOICEBULLETSIZE, + /// + INPUTBULLETLATEX, + /// + BULLETDEPTH1, + /// + BULLETDEPTH2, + /// + BULLETDEPTH3, + /// + BULLETDEPTH4, + /// + BULLETPANEL1, + /// + BULLETPANEL2, + /// + BULLETPANEL3, + /// + BULLETPANEL4, + /// + BULLETPANEL5, + /// + BULLETPANEL6, + /// + BULLETBMTABLE + }; + /// Pointer to the actual instantiation of the ButtonController. + virtual qt2BC & bc(); + /// Build the dialog + virtual void build(); +// /// Filter the inputs +// virtual bool input( FL_OBJECT *, long ); + /// Update the popup. + virtual void update(); + /// Apply from popup + virtual void apply(); + /// Cancel from popup + virtual void cancel(); + +// /// +// virtual QDialog* form() const; + /// - POPUP_MODIFIED, + bool CheckDocumentInput(QWidget* ob, long); /// - POPUP_READONLY - }; - -private: - /// Show the dialog. - void show(); - /// Hide the dialog. - void hide(); - - void checkMarginValues(); - /// - void checkReadOnly(); - /// - void UpdateLayoutDocument(BufferParams const & params); + void ChoiceBulletSize(QWidget* ob, long); + /// + void InputBulletLaTeX(QWidget* ob, long); + /// + void BulletDepth(QWidget* ob, State); + /// + void BulletPanel(QWidget* ob, State); + /// + void BulletBMTable(QWidget* ob, long); + /// + void checkMarginValues(); + /// + void checkReadOnly(); + /// + void CheckChoiceClass(QWidget* ob, long); + /// + void UpdateLayoutDocument(BufferParams const & params); -public: - /// - void checkChoiceClass(QComboBox* cb); -// /// - bool checkDocumentInput(QWidget* w); -// /// - void bulletDepth( int ); - /// - void choiceBulletSize(); -// /// - void inputBulletLaTeX(); -// /// - void setBulletPics(); -// /// - void bulletBMTable( int ); + /// + void paper_update(BufferParams const &); + /// + void class_update(BufferParams const &); + /// + void language_update(BufferParams const &); + /// + void options_update(BufferParams const &); + /// + void bullets_update(BufferParams const &); - /// Update the popup. - void update(); - /// - void paper_update(BufferParams const &); - /// - void class_update(BufferParams const &); - /// - void language_update(BufferParams const &); - /// - void options_update(BufferParams const &); - /// - void bullets_update(BufferParams const &); - /// Apply from popup - void apply(); - /// - void paper_apply(); - /// - bool class_apply(); - /// - bool language_apply(); - /// - bool options_apply(); - /// - void bullets_apply(); - /// Cancel from popup - void cancel(); - /// Build the popup - void build(); - /// Explicitly free the popup. - void free(); + /// + void paper_apply(); + /// + bool class_apply(); + /// + bool language_apply(); + /// + bool options_apply(); + /// + void bullets_apply(); -// /// Typedefinitions from the fdesign produced Header file -// FD_form_tabbed_document * build_tabbed_document(); -// /// -// FD_form_doc_paper * build_doc_paper(); -// /// -// FD_form_doc_class * build_doc_class(); -// /// -// FD_form_doc_language * build_doc_language(); -// /// -// FD_form_doc_options * build_doc_options(); -// /// -// FD_form_doc_bullet * build_doc_bullet(); + /// Fdesign generated methods + QDialog* build_tabbed_document(); + /// + QDialog* build_doc_paper(); + /// + QDialog* build_doc_class(); + /// + QDialog* build_doc_language(); + /// + QDialog* build_doc_options(); + /// + QDialog* build_doc_bullet(); -// /// Real GUI implementation. - FormDocumentDialog* dialog_; + /// Real GUI implementation. + boost::scoped_ptr dialog_; + /// + int ActCell; + /// + int Confirmed; + /// + int current_bullet_panel; + /// + int current_bullet_depth; +// /// +// FL_OBJECT * fbullet; +// /// +// boost::scoped_ptr combo_language; +// /// +// boost::scoped_ptr combo_doc_class; + /// The ButtonController + ButtonController bc_; +}; - /// Which LyXView do we belong to? - LyXView * lv_; - /// - Dialogs * d_; - /// Update connection. - Connection u_; - /// Hide connection. - Connection h_; - /// has form contents changed? Used to control OK/Apply - EnumPopupStatus status; - /// - int ActCell; - /// - int Confirmed; - /// - int currentBulletPanel; - /// - int currentBulletDepth; - /// - QPixmap* standardpix; - QPixmap* amssymbpix; - QPixmap* psnfss1pix; - QPixmap* psnfss2pix; - QPixmap* psnfss3pix; - QPixmap* psnfss4pix; - QPixmap bulletpics[36]; -}; +inline +qt2BC & FormDocument::bc() +{ + return bc_; +} #endif diff --git a/src/frontends/qt2/FormDocumentDialogBase.ui b/src/frontends/qt2/FormDocumentDialog.ui similarity index 92% rename from src/frontends/qt2/FormDocumentDialogBase.ui rename to src/frontends/qt2/FormDocumentDialog.ui index a617fc5ac3..d611ef8253 100644 --- a/src/frontends/qt2/FormDocumentDialogBase.ui +++ b/src/frontends/qt2/FormDocumentDialog.ui @@ -1,10 +1,10 @@ -FormDocumentDialogBase +FormDocumentDialog QDialog name - FormDocumentDialogBase + FormDocumentDialog geometry @@ -90,7 +90,7 @@ QLineEdit name - extraOptionsED + docExtraED @@ -187,7 +187,7 @@ name - pagestyleCO + docPagestyleCO @@ -278,14 +278,14 @@ name - defaultSkipCO + docSkipCO QLineEdit name - defaultSkipED + docSkipED @@ -333,14 +333,14 @@ name - spacingCO + docSpacingCO QLineEdit name - spacingED + docSpacingED @@ -349,14 +349,14 @@ QComboBox name - fontsCO + docFontsCO QComboBox name - classesCO + docClassCO @@ -387,7 +387,7 @@ name - fontSizeCO + docFontSizeCO @@ -412,13 +412,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -460,7 +453,7 @@ QRadioButton name - oneSideRB + docSidesOneRB text @@ -471,7 +464,7 @@ QRadioButton name - twoSidesRB + docSidesTwoRB text @@ -503,7 +496,7 @@ QRadioButton name - oneColumnRB + docColumnsOneRB text @@ -514,7 +507,7 @@ QRadioButton name - twoColumnsRB + docColumnsTwoRB text @@ -546,7 +539,7 @@ QRadioButton name - indentRB + docIndentRB text @@ -557,7 +550,7 @@ QRadioButton name - skipRB + docSkipRB text @@ -586,13 +579,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -637,13 +623,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -739,7 +718,7 @@ name - papersizeCO + papersize2CO @@ -762,13 +741,6 @@ 20 - - sizeHint - - 20 - 20 - - QLabel @@ -813,7 +785,7 @@ name - specialCO + paperPackageCO @@ -838,13 +810,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -881,19 +846,12 @@ 20 - - sizeHint - - 20 - 20 - - QCheckBox name - CheckBox1 + useGeometryCB text @@ -920,13 +878,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -950,13 +901,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1069,21 +1013,21 @@ QLineEdit name - marginLeftED + leftMarginED QLineEdit name - marginBottomED + bottomMarginED QLineEdit name - marginRightED + rightMarginED @@ -1105,7 +1049,7 @@ QLineEdit name - marginTopED + topMarginED @@ -1245,21 +1189,21 @@ QLineEdit name - headheightED + headHeightED QLineEdit name - headsepED + headSepED QLineEdit name - footskipED + footSkipED @@ -1333,13 +1277,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -1382,13 +1319,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1425,13 +1355,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1492,13 +1415,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1594,7 +1510,7 @@ name - encodingCO + inputEncCO @@ -1619,13 +1535,6 @@ 20 - - sizeHint - - 20 - 20 - - QButtonGroup @@ -1716,7 +1625,7 @@ name - quoteStyleTypeCO + quotesLanguageCO @@ -1740,7 +1649,7 @@ QRadioButton name - quoteStyleSingleRB + singleRB text @@ -1751,7 +1660,7 @@ QRadioButton name - quoteStyleDoubleRB + doubleRB text @@ -1782,13 +1691,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -1812,13 +1714,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -1861,13 +1756,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1904,13 +1792,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -1971,13 +1852,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -2013,16 +1887,16 @@ QSpinBox name - sectionNumberDepthSB - - - minValue - -2 + secNumDepthSB maxValue 5 + + minValue + -2 + @@ -2046,13 +1920,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -2090,14 +1957,14 @@ name tocDepthSB - - minValue - -1 - maxValue 5 + + minValue + -1 + @@ -2121,13 +1988,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -2163,7 +2023,7 @@ QComboBox name - psDriverCO + postscriptDriverCO @@ -2188,13 +2048,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -2231,19 +2084,12 @@ 20 - - sizeHint - - 20 - 20 - - QCheckBox name - amsMathCB + useAmsMathCB text @@ -2270,13 +2116,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -2300,13 +2139,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -2330,13 +2162,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -2409,13 +2234,6 @@ 20 - - sizeHint - - 20 - 20 - - QLabel @@ -2542,13 +2360,6 @@ 20 - - sizeHint - - 20 - 20 - - QButtonGroup @@ -2587,6 +2398,10 @@ toggleButton true + + toggleButton + true + QToolButton @@ -2602,6 +2417,10 @@ toggleButton true + + toggleButton + true + QToolButton @@ -2617,6 +2436,10 @@ toggleButton true + + toggleButton + true + QToolButton @@ -2632,6 +2455,10 @@ toggleButton true + + toggleButton + true + @@ -2659,13 +2486,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -2702,13 +2522,6 @@ 20 - - sizeHint - - 20 - 20 - - QButtonGroup @@ -2716,14 +2529,14 @@ name bulletTypeBG - - title - - frameShape NoFrame + + title + + radioButtonExclusive false @@ -2736,15 +2549,6 @@ name Spacer26 - - geometry - - 77 - 12 - 20 - 20 - - orientation Horizontal @@ -2760,33 +2564,22 @@ 20 - - sizeHint - - 20 - 20 - - QToolButton name - bullet01PB + bullet10PB geometry - 121 - 11 + 98 + 33 23 22 - - text - - sizePolicy @@ -2794,36 +2587,13 @@ 0 - - toggleButton - true - - - - QToolButton - - name - bullet02PB - - - geometry - - 144 - 11 - 23 - 22 - - text - sizePolicy - - 0 - 0 - + toggleButton + true toggleButton @@ -2834,21 +2604,17 @@ QToolButton name - bullet03PB + bullet11PB geometry - 167 - 11 + 121 + 33 23 22 - - text - - sizePolicy @@ -2856,6 +2622,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -2865,21 +2639,17 @@ QToolButton name - bullet04PB + bullet12PB geometry - 190 - 11 + 144 + 33 23 22 - - text - - sizePolicy @@ -2887,6 +2657,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -2896,21 +2674,17 @@ QToolButton name - bullet10PB + bullet13PB geometry - 98 + 167 33 23 22 - - text - - sizePolicy @@ -2918,6 +2692,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -2927,21 +2709,17 @@ QToolButton name - bullet11PB + bullet14PB geometry - 121 + 190 33 23 22 - - text - - sizePolicy @@ -2949,6 +2727,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -2958,21 +2744,17 @@ QToolButton name - bullet12PB + bullet15PB geometry - 144 + 213 33 23 22 - - text - - sizePolicy @@ -2980,6 +2762,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -2989,21 +2779,17 @@ QToolButton name - bullet13PB + bullet21PB geometry - 167 - 33 + 121 + 55 23 22 - - text - - sizePolicy @@ -3011,6 +2797,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3020,21 +2814,17 @@ QToolButton name - bullet14PB + bullet20PB geometry - 190 - 33 + 98 + 55 23 22 - - text - - sizePolicy @@ -3042,6 +2832,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3051,21 +2849,17 @@ QToolButton name - bullet15PB + bullet22PB geometry - 213 - 33 + 144 + 55 23 22 - - text - - sizePolicy @@ -3073,6 +2867,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3082,21 +2884,17 @@ QToolButton name - bullet21PB + bullet23PB geometry - 121 + 167 55 23 22 - - text - - sizePolicy @@ -3104,6 +2902,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3113,21 +2919,17 @@ QToolButton name - bullet20PB + bullet24PB geometry - 98 + 190 55 23 22 - - text - - sizePolicy @@ -3135,6 +2937,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3144,21 +2954,17 @@ QToolButton name - bullet22PB + bullet25PB geometry - 144 + 213 55 23 22 - - text - - sizePolicy @@ -3166,6 +2972,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3175,21 +2989,17 @@ QToolButton name - bullet23PB + bullet30PB geometry - 167 - 55 + 98 + 77 23 22 - - text - - sizePolicy @@ -3197,6 +3007,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3206,21 +3024,17 @@ QToolButton name - bullet24PB + bullet31PB geometry - 190 - 55 + 121 + 77 23 22 - - text - - sizePolicy @@ -3228,6 +3042,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3237,21 +3059,17 @@ QToolButton name - bullet25PB + bullet32PB geometry - 213 - 55 + 144 + 77 23 22 - - text - - sizePolicy @@ -3259,6 +3077,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3268,21 +3094,17 @@ QToolButton name - bullet30PB + bullet34PB geometry - 98 + 190 77 23 22 - - text - - sizePolicy @@ -3290,6 +3112,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3299,21 +3129,17 @@ QToolButton name - bullet31PB + bullet35PB geometry - 121 + 213 77 23 22 - - text - - sizePolicy @@ -3321,6 +3147,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3330,21 +3164,17 @@ QToolButton name - bullet32PB + bullet42PB geometry 144 - 77 + 99 23 22 - - text - - sizePolicy @@ -3352,6 +3182,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3361,21 +3199,17 @@ QToolButton name - bullet33PB + bullet43PB geometry 167 - 77 + 99 23 22 - - text - - sizePolicy @@ -3383,6 +3217,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3392,21 +3234,17 @@ QToolButton name - bullet34PB + bullet44PB geometry 190 - 77 + 99 23 22 - - text - - sizePolicy @@ -3414,6 +3252,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3423,21 +3269,17 @@ QToolButton name - bullet35PB + bullet45PB geometry 213 - 77 + 99 23 22 - - text - - sizePolicy @@ -3445,6 +3287,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3454,21 +3304,17 @@ QToolButton name - bullet42PB + bullet50PB geometry - 144 - 99 + 98 + 121 23 22 - - text - - sizePolicy @@ -3476,6 +3322,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3485,21 +3339,17 @@ QToolButton name - bullet43PB + bullet51PB geometry - 167 - 99 + 121 + 121 23 22 - - text - - sizePolicy @@ -3507,6 +3357,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3516,21 +3374,17 @@ QToolButton name - bullet44PB + bullet52PB geometry - 190 - 99 + 144 + 121 23 22 - - text - - sizePolicy @@ -3538,6 +3392,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3547,21 +3409,17 @@ QToolButton name - bullet45PB + bullet53PB geometry - 213 - 99 + 167 + 121 23 22 - - text - - sizePolicy @@ -3569,6 +3427,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3578,21 +3444,17 @@ QToolButton name - bullet50PB + bullet54PB geometry - 98 + 190 121 23 22 - - text - - sizePolicy @@ -3600,6 +3462,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3609,21 +3479,17 @@ QToolButton name - bullet51PB + bullet55PB geometry - 121 + 213 121 23 22 - - text - - sizePolicy @@ -3631,6 +3497,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3640,21 +3514,17 @@ QToolButton name - bullet52PB + bullet40PB geometry - 144 - 121 + 98 + 99 23 22 - - text - - sizePolicy @@ -3662,6 +3532,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3671,21 +3549,17 @@ QToolButton name - bullet53PB + bullet41PB geometry - 167 - 121 + 121 + 99 23 22 - - text - - sizePolicy @@ -3693,6 +3567,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3702,27 +3584,24 @@ QToolButton name - bullet54PB + bulletPanelStandardPB geometry - 190 - 121 - 23 + 11 + 11 + 66 22 text - + &Standard - sizePolicy - - 0 - 0 - + toggleButton + true toggleButton @@ -3733,27 +3612,24 @@ QToolButton name - bullet55PB + bulletPanelMathsPB geometry - 213 - 121 - 23 + 11 + 33 + 66 22 text - + &Maths - sizePolicy - - 0 - 0 - + toggleButton + true toggleButton @@ -3764,27 +3640,24 @@ QToolButton name - bullet05PB + bulletPanelDing1PB geometry - 213 - 11 - 23 + 11 + 55 + 66 22 text - + &Ding 1 - sizePolicy - - 0 - 0 - + toggleButton + true toggleButton @@ -3795,27 +3668,24 @@ QToolButton name - bullet00PB + bulletPanelDing2PB geometry - 98 - 11 - 23 + 11 + 77 + 66 22 text - + D&ing 2 - sizePolicy - - 0 - 0 - + toggleButton + true toggleButton @@ -3826,7 +3696,7 @@ QToolButton name - bulletDing3PB + bulletPanelDing3PB geometry @@ -3845,12 +3715,16 @@ toggleButton true + + toggleButton + true + QToolButton name - bulletDing4PB + bulletPanelDing4PB geometry @@ -3870,21 +3744,52 @@ QToolButton name - bullet40PB + bullet33PB geometry - 98 - 99 + 167 + 77 23 22 + + sizePolicy + + 0 + 0 + + text + + toggleButton + true + + + toggleButton + true + + + + QToolButton + + name + bullet00PB + + + geometry + + 98 + 11 + 23 + 22 + + sizePolicy @@ -3892,6 +3797,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3901,21 +3814,17 @@ QToolButton name - bullet41PB + bullet01PB geometry 121 - 99 + 11 23 22 - - text - - sizePolicy @@ -3923,6 +3832,14 @@ 0 + + text + + + + toggleButton + true + toggleButton true @@ -3932,20 +3849,31 @@ QToolButton name - bulletStandardPB + bullet02PB geometry - 11 + 144 11 - 66 + 23 22 + + sizePolicy + + 0 + 0 + + text - &Standard + + + + toggleButton + true toggleButton @@ -3956,20 +3884,31 @@ QToolButton name - bulletMathsPB + bullet03PB geometry - 11 - 33 - 66 + 167 + 11 + 23 22 + + sizePolicy + + 0 + 0 + + text - &Maths + + + + toggleButton + true toggleButton @@ -3980,20 +3919,31 @@ QToolButton name - bulletDing1PB + bullet04PB geometry - 11 - 55 - 66 + 190 + 11 + 23 22 + + sizePolicy + + 0 + 0 + + text - &Ding 1 + + + + toggleButton + true toggleButton @@ -4004,20 +3954,31 @@ QToolButton name - bulletDing2PB + bullet05PB geometry - 11 - 77 - 66 + 213 + 11 + 23 22 + + sizePolicy + + 0 + 0 + + text - D&ing 2 + + + + toggleButton + true toggleButton @@ -4045,13 +4006,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -4075,13 +4029,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -4118,13 +4065,6 @@ 20 - - sizeHint - - 20 - 20 - - QLayoutWidget @@ -4160,7 +4100,7 @@ QLineEdit name - latexED + bulletLatexED maxLength @@ -4189,13 +4129,6 @@ 20 - - sizeHint - - 20 - 20 - - @@ -4208,16 +4141,6 @@ name warningLA - - text - - - - font - - 1 - - palette @@ -4439,6 +4362,16 @@ + + font + + 1 + + + + text + + alignment AlignCenter @@ -4482,13 +4415,6 @@ 20 - - sizeHint - - 20 - 20 - - QPushButton @@ -4535,7 +4461,7 @@ text - Close + Cancel @@ -4546,307 +4472,307 @@ okPB clicked() - FormDocumentDialogBase + FormDocumentDialog slotOK() restorePB clicked() - FormDocumentDialogBase + FormDocumentDialog slotRestore() - specialCO + paperPackageCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotSpecialPaperPackage(int) orientationBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotOrientation(int) - papersizeCO + papersize2CO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotPapersize(int) - CheckBox1 + useGeometryCB toggled(bool) - FormDocumentDialogBase + FormDocumentDialog slotUseGeometryPackage(bool) customWidthED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotWidth(const QString&) customHeightED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotHeight(const QString&) - marginTopED + topMarginED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotMarginTop(const QString&) - marginBottomED + bottomMarginED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotMarginBottom(const QString&) - marginLeftED + leftMarginED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotMarginLeft(const QString&) - marginRightED + rightMarginED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotMarginRight(const QString&) - headheightED + headHeightED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotHeadheight(const QString&) - headsepED + headSepED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotHeadsep(const QString&) - footskipED + footSkipED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotFootskip(const QString&) - classesCO + docClassCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotClass(int) - pagestyleCO + docPagestyleCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotPageStyle(int) - fontsCO + docFontsCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotFont(int) - fontSizeCO + docFontSizeCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotFontSize(int) - extraOptionsED + docExtraED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotExtraOptions(const QString&) - defaultSkipCO + docSkipCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotDefaultSkip(int) - defaultSkipED + docSkipED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotDefaultSkip(const QString&) - spacingCO + docSpacingCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotSpacing(int) - spacingED + docSpacingED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotSpacing(const QString&) sidesBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotSides(int) columnsBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotColumns(int) separationBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotSeparation(int) languageCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotLanguage(int) - encodingCO + inputEncCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotEncoding(int) - quoteStyleTypeCO + quotesLanguageCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotQuoteStyle(int) quoteStyleBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotQuoteStyle(int) floatPlacementED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotFloatPlacement(const QString&) - sectionNumberDepthSB + secNumDepthSB valueChanged(int) - FormDocumentDialogBase + FormDocumentDialog slotSectionNumberDepth(int) tocDepthSB valueChanged(int) - FormDocumentDialogBase + FormDocumentDialog slotTOCDepth(int) - psDriverCO + postscriptDriverCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotPSDriver(int) - amsMathCB + useAmsMathCB toggled(bool) - FormDocumentDialogBase + FormDocumentDialog slotAMSMath(bool) applyPB clicked() - FormDocumentDialogBase + FormDocumentDialog slotApply() cancelPB clicked() - FormDocumentDialogBase + FormDocumentDialog slotClose() - latexED + bulletLatexED textChanged(const QString&) - FormDocumentDialogBase + FormDocumentDialog slotBulletLaTeX(const QString&) - bulletStandardPB + bulletPanelStandardPB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletStandard() - bulletMathsPB + bulletPanelMathsPB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletMaths() - bulletDing1PB + bulletPanelDing1PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDing1() - bulletDing2PB + bulletPanelDing2PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDing2() - bulletDing3PB + bulletPanelDing3PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDing3() - bulletDing4PB + bulletPanelDing4PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDing4() bulletTypeBG clicked(int) - FormDocumentDialogBase + FormDocumentDialog slotBulletSymbol(int) bulletSizeCO activated(int) - FormDocumentDialogBase + FormDocumentDialog slotBulletSize(int) bulletDepth1PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDepth1() bulletDepth2PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDepth2() bulletDepth3PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDing3() bulletDepth4PB clicked() - FormDocumentDialogBase + FormDocumentDialog slotBulletDepth4() slotAMSMath(bool) @@ -4902,47 +4828,47 @@ slotWidth(const QString&) - classesCO - pagestyleCO - fontsCO - fontSizeCO - extraOptionsED - defaultSkipCO - defaultSkipED - spacingCO - spacingED - oneSideRB - twoSidesRB - oneColumnRB - twoColumnsRB - indentRB - skipRB - papersizeCO - specialCO - CheckBox1 + docClassCO + docPagestyleCO + docFontsCO + docFontSizeCO + docExtraED + docSkipCO + docSkipED + docSpacingCO + docSpacingED + docSidesOneRB + docSidesTwoRB + docColumnsOneRB + docColumnsTwoRB + docIndentRB + docSkipRB + papersize2CO + paperPackageCO + useGeometryCB portraitRB landscapeRB - marginTopED - marginBottomED - marginLeftED - marginRightED + topMarginED + bottomMarginED + leftMarginED + rightMarginED customWidthED customHeightED - headheightED - headsepED - footskipED + headHeightED + headSepED + footSkipED languageCO - encodingCO - quoteStyleTypeCO - quoteStyleSingleRB - quoteStyleDoubleRB + inputEncCO + quotesLanguageCO + singleRB + doubleRB floatPlacementED - sectionNumberDepthSB + secNumDepthSB tocDepthSB - psDriverCO - amsMathCB + postscriptDriverCO + useAmsMathCB bulletSizeCO - latexED + bulletLatexED restorePB okPB applyPB diff --git a/src/frontends/qt2/FormDocumentDialog.C b/src/frontends/qt2/FormDocumentDialogImpl.C similarity index 100% rename from src/frontends/qt2/FormDocumentDialog.C rename to src/frontends/qt2/FormDocumentDialogImpl.C diff --git a/src/frontends/qt2/FormDocumentDialog.h b/src/frontends/qt2/FormDocumentDialogImpl.h similarity index 85% rename from src/frontends/qt2/FormDocumentDialog.h rename to src/frontends/qt2/FormDocumentDialogImpl.h index ff9d24372d..b593e64c30 100644 --- a/src/frontends/qt2/FormDocumentDialog.h +++ b/src/frontends/qt2/FormDocumentDialogImpl.h @@ -1,16 +1,16 @@ -#ifndef FORMDOCUMENTDIALOG_H -#define FORMDOCUMENTDIALOG_H -#include "FormDocumentDialogBase.h" +#ifndef FORMDOCUMENTDIALOGIMPL_H +#define FORMDOCUMENTDIALOGIMPL_H +#include "FormDocumentDialog.h" class FormDocument; -class FormDocumentDialog : public FormDocumentDialogBase +class FormDocumentDialogImpl : public FormDocumentDialog { Q_OBJECT public: - FormDocumentDialog( FormDocument* form, QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~FormDocumentDialog(); + FormDocumentDialogImpl( FormDocument* form, QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); + ~FormDocumentDialogImpl(); public slots: void slotApply(); diff --git a/src/frontends/qt2/Makefile.am b/src/frontends/qt2/Makefile.am index 3fa353c314..83bbf40fb8 100644 --- a/src/frontends/qt2/Makefile.am +++ b/src/frontends/qt2/Makefile.am @@ -39,7 +39,7 @@ libqt2_la_OBJADD = \ ../xforms/FormBibitem.lo \ ../xforms/FormBibtex.lo \ ../xforms/FormBrowser.lo \ - ../xforms/FormDocument.lo \ + ../xforms/FormDocument.lo \ ../xforms/FormError.lo \ ../xforms/FormExternal.lo \ ../xforms/FormGraphics.lo \ diff --git a/src/frontends/qt2/Qt2Base.h b/src/frontends/qt2/Qt2Base.h index e711bb6765..e3087690b9 100644 --- a/src/frontends/qt2/Qt2Base.h +++ b/src/frontends/qt2/Qt2Base.h @@ -14,13 +14,13 @@ #ifndef QT2BASE_H #define QT2BASE_H -#include - class QDialog; #include #include +#include + #ifdef __GNUG__ #pragma interface #endif @@ -53,19 +53,19 @@ protected: protected slots: // dialog closed from WM void slotWMHide(); - + // Apply button clicked void slotApply(); - + // OK button clicked void slotOK(); - + // Cancel button clicked void slotCancel(); - + // Restore button clicked void slotRestore(); - + private: /// Pointer to the actual instantiation of xform's form virtual QDialog* form() const = 0; diff --git a/src/frontends/qt2/dialogs-qt2.txt b/src/frontends/qt2/dialogs-qt2.txt index 9c8f9421e8..ccc4149794 100644 --- a/src/frontends/qt2/dialogs-qt2.txt +++ b/src/frontends/qt2/dialogs-qt2.txt @@ -2,9 +2,9 @@ Dialog Maintainer MVC conversion ---------------------------------------------- Character Edwin Citation Kalle -Copyright Kalle In progress +Copyright Kalle Done Credits -Document Kalle +Document Kalle In progress Error File Edwin Graphics -- 2.39.2