From: John Levon Date: Wed, 29 Aug 2001 00:37:04 +0000 (+0000) Subject: Log and VCLog dialogs for qt2 X-Git-Tag: 1.6.10~20736 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=7e1ba5f1f9963ef4c5c6048935038937b71e063d;p=features.git Log and VCLog dialogs for qt2 git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2609 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/qt2/ChangeLog b/src/frontends/qt2/ChangeLog index 6e5b236536..f642b5258b 100644 --- a/src/frontends/qt2/ChangeLog +++ b/src/frontends/qt2/ChangeLog @@ -1,3 +1,15 @@ +2001-08-29 John Levon + + * QLog.[Ch]: + * QLogDialog.[Ch]: + * ui/QLogDialog.ui: + * QVCLog.[Ch]: + * QVCLogDialog.[Ch]: + * ui/QVCLogDialog.ui: + * Dialogs.C: + * Makefile.am: + * Makefile.dialogs: add log and vclog dialogs + 2001-08-28 John Levon * Dialogs.C: diff --git a/src/frontends/qt2/Dialogs.C b/src/frontends/qt2/Dialogs.C index bc43d2d9b6..6ad64d6215 100644 --- a/src/frontends/qt2/Dialogs.C +++ b/src/frontends/qt2/Dialogs.C @@ -23,10 +23,12 @@ #include "QGraphicsDialog.h" #include "QIncludeDialog.h" #include "QIndexDialog.h" +#include "QLogDialog.h" #include "QRefDialog.h" #include "QTabularCreateDialog.h" #include "QThesaurusDialog.h" #include "QURLDialog.h" +#include "QVCLogDialog.h" #include "QAbout.h" #include "QBibitem.h" @@ -39,6 +41,7 @@ #include "QGraphics.h" #include "QInclude.h" #include "QIndex.h" +#include "QLog.h" #include "QParagraph.h" #include "QPrint.h" #include "QRef.h" @@ -47,6 +50,7 @@ #include "QTabularCreate.h" #include "QThesaurus.h" #include "QURL.h" +#include "QVCLog.h" #include "QtLyXView.h" #include "Dialogs.h" @@ -66,17 +70,18 @@ #include "controllers/ControlGraphics.h" #include "controllers/ControlInclude.h" #include "controllers/ControlIndex.h" +#include "controllers/ControlLog.h" #include "controllers/ControlRef.h" #include "controllers/ControlSplash.h" #include "controllers/ControlTabularCreate.h" #include "controllers/ControlThesaurus.h" #include "controllers/ControlUrl.h" +#include "controllers/ControlVCLog.h" #if 0 #include "controllers/ControlButtons.h" #include "controllers/ControlCitation.h" #include "controllers/ControlFloat.h" #include "controllers/ControlLabel.h" -#include "controllers/ControlLog.h" #include "controllers/ControlMinipage.h" #include "controllers/ControlPreamble.h" #include "controllers/ControlPrint.h" @@ -84,7 +89,6 @@ #include "controllers/ControlSearch.h" #include "controllers/ControlSpellchecker.h" #include "controllers/ControlToc.h" -#include "controllers/ControlVCLog.h" #endif #include "GUI.h" @@ -109,10 +113,12 @@ Dialogs::Dialogs(LyXView * lv) add(new GUIGraphics(*lv, *this)); add(new GUIInclude(*lv, *this)); add(new GUIIndex(*lv, *this)); + add(new GUILog(*lv, *this)); add(new GUIRef(*lv, *this)); add(new GUITabularCreate(*lv, *this)); add(new GUIThesaurus(*lv, *this)); add(new GUIUrl(*lv, *this)); + add(new GUIVCLog(*lv, *this)); // reduce the number of connections needed in // dialogs by a simple connection here. diff --git a/src/frontends/qt2/Makefile.am b/src/frontends/qt2/Makefile.am index 37f17e1073..f661d496cb 100644 --- a/src/frontends/qt2/Makefile.am +++ b/src/frontends/qt2/Makefile.am @@ -27,7 +27,6 @@ libqt2_la_OBJADD = \ ../xforms/FormDocument.lo \ ../xforms/FormIndex.lo \ ../xforms/FormInset.lo \ - ../xforms/FormLog.lo \ ../xforms/FormMinipage.lo \ ../xforms/FormPreamble.lo \ ../xforms/FormPreferences.lo \ @@ -35,7 +34,6 @@ libqt2_la_OBJADD = \ ../xforms/FormTabular.lo \ ../xforms/FormToc.lo \ ../xforms/FormUrl.lo \ - ../xforms/FormVCLog.lo \ ../xforms/MathsSymbols.lo \ ../xforms/Menubar_pimpl.lo \ ../xforms/RadioButtonGroup.lo \ diff --git a/src/frontends/qt2/Makefile.dialogs b/src/frontends/qt2/Makefile.dialogs index 15b80b36a6..65ec673613 100644 --- a/src/frontends/qt2/Makefile.dialogs +++ b/src/frontends/qt2/Makefile.dialogs @@ -13,6 +13,7 @@ DIALOGS = \ QGraphics \ QInclude \ QIndex \ + QLog \ QParagraph \ QPrint \ QRef \ @@ -21,7 +22,8 @@ DIALOGS = \ QTabularCreate \ QThesaurus \ QToc \ - QURL + QURL \ + QVCLog DIALOGSOURCES = \ QAbout.h QAboutDialog.h \ @@ -48,6 +50,8 @@ DIALOGSOURCES = \ QInclude.C QIncludeDialog.C \ QIndex.h QIndexDialog.h \ QIndex.C QIndexDialog.C \ + QLog.h QLogDialog.h \ + QLog.C QLogDialog.C \ QParagraph.h QParagraphDialog.h \ QParagraph.C QParagraphDialog.C \ QPrint.h QPrintDialog.h \ @@ -65,7 +69,9 @@ DIALOGSOURCES = \ QToc.h QTocDialog.h \ QToc.C QTocDialog.C \ QURL.h QURLDialog.h \ - QURL.C QURLDialog.C + QURL.C QURLDialog.C \ + QVCLog.h QVCLogDialog.h \ + QVCLog.C QVCLogDialog.C MOCDIALOGS = \ QAboutDialog_moc.C \ @@ -80,6 +86,7 @@ MOCDIALOGS = \ QGraphicsDialog_moc.C \ QIncludeDialog_moc.C \ QIndexDialog_moc.C \ + QLogDialog_moc.C \ QParagraphDialog_moc.C \ QPrintDialog_moc.C \ QRefDialog_moc.C \ @@ -88,7 +95,8 @@ MOCDIALOGS = \ QTabularCreateDialog_moc.C \ QThesaurusDialog_moc.C \ QTocDialog_moc.C \ - QURLDialog_moc.C + QURLDialog_moc.C \ + QVCLogDialog_moc.C UIDIALOGS = \ QAboutDialogBase.h \ @@ -115,6 +123,8 @@ UIDIALOGS = \ QIncludeDialogBase.C \ QIndexDialogBase.h \ QIndexDialogBase.C \ + QLogDialogBase.h \ + QLogDialogBase.C \ QParagraphDialogBase.h \ QParagraphDialogBase.C \ QPrintDialogBase.h \ @@ -130,7 +140,9 @@ UIDIALOGS = \ QTocDialogBase.h \ QTocDialogBase.C \ QURLDialogBase.h \ - QURLDialogBase.C + QURLDialogBase.C \ + QVCLogDialogBase.h \ + QVCLogDialogBase.C UIMOCDIALOGS = \ QAboutDialogBase_moc.C \ @@ -145,6 +157,7 @@ UIMOCDIALOGS = \ QGraphicsDialogBase_moc.C \ QIncludeDialogBase_moc.C \ QIndexDialogBase_moc.C \ + QLogDialogBase_moc.C \ QParagraphDialogBase_moc.C \ QPrintDialogBase_moc.C \ QRefDialogBase_moc.C \ @@ -152,4 +165,5 @@ UIMOCDIALOGS = \ QTabularCreateDialogBase_moc.C \ QThesaurusDialogBase_moc.C \ QTocDialogBase_moc.C \ - QURLDialogBase_moc.C + QURLDialogBase_moc.C \ + QVCLogDialogBase_moc.C diff --git a/src/frontends/qt2/QLog.C b/src/frontends/qt2/QLog.C new file mode 100644 index 0000000000..1df0d10cf2 --- /dev/null +++ b/src/frontends/qt2/QLog.C @@ -0,0 +1,70 @@ +/** + * \file QLog.C + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#include +#include + +#ifdef __GNUG__ +#pragma implementation +#endif + +#include +#include + +#include "QLogDialog.h" +#include "QLog.h" +#include "Qt2BC.h" +#include "gettext.h" + +#include "QtLyXView.h" +#include "ControlLog.h" + +typedef Qt2CB > base_class; + +QLog::QLog(ControlLog & c) + : base_class(c, _("Log")) +{ +} + + +void QLog::build_dialog() +{ + dialog_.reset(new QLogDialog(this)); + + bc().setCancel(dialog_->closePB); +} + + +void QLog::update_contents() +{ + std::pair const logfile = controller().logfile(); + + if (logfile.first == Buffer::buildlog) + dialog_->setCaption(_("Build log")); + else + dialog_->setCaption(_("LaTeX log")); + + dialog_->logTV->setText(""); + + ifstream ifstr(logfile.second.c_str()); + if (!ifstr) { + if (logfile.first == Buffer::buildlog) + dialog_->logTV->setText(_("No build log file found")); + else + dialog_->logTV->setText(_("No LaTeX log file found")); + return; + } + + string text; + string line; + + while (getline(ifstr, line)) + text += line + "\n"; + + dialog_->logTV->setText(text.c_str()); +} diff --git a/src/frontends/qt2/QLog.h b/src/frontends/qt2/QLog.h new file mode 100644 index 0000000000..eb3645f551 --- /dev/null +++ b/src/frontends/qt2/QLog.h @@ -0,0 +1,41 @@ +// -*- C++ -*- +/** + * \file QLog.h + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#ifndef QLOG_H +#define QLOG_H + +#ifdef __GNUG__ +#pragma interface +#endif + +#include "Qt2Base.h" + +class ControlLog; +class QLogDialog; + +/// +class QLog + : public Qt2CB > +{ +public: + /// + friend class QLogDialog; + /// + QLog(ControlLog &); + +private: + /// Apply changes + virtual void apply() {}; + /// update + virtual void update_contents(); + /// build the dialog + virtual void build_dialog(); +}; + +#endif // QLOG_H diff --git a/src/frontends/qt2/QLogDialog.C b/src/frontends/qt2/QLogDialog.C new file mode 100644 index 0000000000..0fe4f682a4 --- /dev/null +++ b/src/frontends/qt2/QLogDialog.C @@ -0,0 +1,40 @@ +/** + * \file QLogDialog.C + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#include +#include + +#include +#include +#include "QLogDialog.h" +#include "Dialogs.h" +#include "QLog.h" + +#include "QtLyXView.h" +#include "ControlLog.h" + +QLogDialog::QLogDialog(QLog * form) + : QLogDialogBase(0, 0, false, 0), + form_(form) +{ + connect(closePB, SIGNAL(clicked()), + form, SLOT(slotClose())); +} + + +void QLogDialog::closeEvent(QCloseEvent * e) +{ + form_->slotWMHide(); + e->accept(); +} + + +void QLogDialog::updateClicked() +{ + form_->update_contents(); +} diff --git a/src/frontends/qt2/QLogDialog.h b/src/frontends/qt2/QLogDialog.h new file mode 100644 index 0000000000..7ae346523d --- /dev/null +++ b/src/frontends/qt2/QLogDialog.h @@ -0,0 +1,34 @@ +/** + * \file QLogDialog.h + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#ifndef QLOGDIALOG_H +#define QLOGDIALOG_H + +#include + +#include "ui/QLogDialogBase.h" + +class QLog; + +class QLogDialog : public QLogDialogBase +{ Q_OBJECT + +public: + QLogDialog(QLog * form); + +protected slots: + virtual void updateClicked(); + +protected: + virtual void closeEvent(QCloseEvent * e); + +private: + QLog * form_; +}; + +#endif // QLOGDIALOG_H diff --git a/src/frontends/qt2/QVCLog.C b/src/frontends/qt2/QVCLog.C new file mode 100644 index 0000000000..32d477b82b --- /dev/null +++ b/src/frontends/qt2/QVCLog.C @@ -0,0 +1,52 @@ +/** + * \file QVCLog.C + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#include +#include "Lsstream.h" + +#ifdef __GNUG__ +#pragma implementation +#endif + +#include +#include + +#include "QVCLogDialog.h" +#include "QVCLog.h" +#include "Qt2BC.h" +#include "gettext.h" + +#include "QtLyXView.h" +#include "ControlVCLog.h" + +typedef Qt2CB > base_class; + +QVCLog::QVCLog(ControlVCLog & c) + : base_class(c, _("VCLog")) +{ +} + + +void QVCLog::build_dialog() +{ + dialog_.reset(new QVCLogDialog(this)); + + bc().setCancel(dialog_->closePB); +} + + +void QVCLog::update_contents() +{ + dialog_->setCaption(string(_("Version control log for ") + controller().getBufferFileName()).c_str()); + + dialog_->vclogTV->setText(""); + + stringstream ss; + + dialog_->vclogTV->setText(controller().getVCLogFile(ss).str().c_str()); +} diff --git a/src/frontends/qt2/QVCLog.h b/src/frontends/qt2/QVCLog.h new file mode 100644 index 0000000000..4413295868 --- /dev/null +++ b/src/frontends/qt2/QVCLog.h @@ -0,0 +1,41 @@ +// -*- C++ -*- +/** + * \file QVCLog.h + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#ifndef QVCLOG_H +#define QVCLOG_H + +#ifdef __GNUG__ +#pragma interface +#endif + +#include "Qt2Base.h" + +class ControlVCLog; +class QVCLogDialog; + +/// +class QVCLog + : public Qt2CB > +{ +public: + /// + friend class QVCLogDialog; + /// + QVCLog(ControlVCLog &); + +private: + /// Apply changes + virtual void apply() {}; + /// update + virtual void update_contents(); + /// build the dialog + virtual void build_dialog(); +}; + +#endif // QVCLOG_H diff --git a/src/frontends/qt2/QVCLogDialog.C b/src/frontends/qt2/QVCLogDialog.C new file mode 100644 index 0000000000..ac42d4fca0 --- /dev/null +++ b/src/frontends/qt2/QVCLogDialog.C @@ -0,0 +1,40 @@ +/** + * \file QVCLogDialog.C + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#include +#include + +#include +#include +#include "QVCLogDialog.h" +#include "Dialogs.h" +#include "QVCLog.h" + +#include "QtLyXView.h" +#include "ControlVCLog.h" + +QVCLogDialog::QVCLogDialog(QVCLog * form) + : QVCLogDialogBase(0, 0, false, 0), + form_(form) +{ + connect(closePB, SIGNAL(clicked()), + form, SLOT(slotClose())); +} + + +void QVCLogDialog::closeEvent(QCloseEvent * e) +{ + form_->slotWMHide(); + e->accept(); +} + + +void QVCLogDialog::updateClicked() +{ + form_->update_contents(); +} diff --git a/src/frontends/qt2/QVCLogDialog.h b/src/frontends/qt2/QVCLogDialog.h new file mode 100644 index 0000000000..ea61dbb378 --- /dev/null +++ b/src/frontends/qt2/QVCLogDialog.h @@ -0,0 +1,34 @@ +/** + * \file QVCLogDialog.h + * Copyright 2001 the LyX Team + * Read the file COPYING + * + * \author John Levon + */ + +#ifndef QVCLOGDIALOG_H +#define QVCLOGDIALOG_H + +#include + +#include "ui/QVCLogDialogBase.h" + +class QVCLog; + +class QVCLogDialog : public QVCLogDialogBase +{ Q_OBJECT + +public: + QVCLogDialog(QVCLog * form); + +protected slots: + virtual void updateClicked(); + +protected: + virtual void closeEvent(QCloseEvent * e); + +private: + QVCLog * form_; +}; + +#endif // QVCLOGDIALOG_H diff --git a/src/frontends/qt2/ui/QLogDialog.ui b/src/frontends/qt2/ui/QLogDialog.ui new file mode 100644 index 0000000000..4320bd98f2 --- /dev/null +++ b/src/frontends/qt2/ui/QLogDialog.ui @@ -0,0 +1,124 @@ + +QLogDialogBase +config.h +gettext.h + + QDialog + + name + QLogDialogBase + + + geometry + + 0 + 0 + 424 + 328 + + + + caption + Log + + + + margin + 11 + + + spacing + 6 + + + QTextView + + name + logTV + + + + QLayoutWidget + + name + Layout27 + + + + margin + 0 + + + spacing + 6 + + + + name + Spacer3 + + + orientation + Horizontal + + + sizeType + Expanding + + + sizeHint + + 20 + 20 + + + + + QPushButton + + name + updatePB + + + text + &Update + + + default + true + + + toolTip + Update the display + + + + QPushButton + + name + closePB + + + text + &Close + + + + + + + + + updatePB + clicked() + QLogDialogBase + updateClicked() + + updateClicked() + + + logTV + updatePB + closePB + + diff --git a/src/frontends/qt2/ui/QVCLogDialog.ui b/src/frontends/qt2/ui/QVCLogDialog.ui new file mode 100644 index 0000000000..cf1cd9348e --- /dev/null +++ b/src/frontends/qt2/ui/QVCLogDialog.ui @@ -0,0 +1,124 @@ + +QVCLogDialogBase +config.h +gettext.h + + QDialog + + name + QVCLogDialogBase + + + geometry + + 0 + 0 + 420 + 328 + + + + caption + Version control log + + + + margin + 11 + + + spacing + 6 + + + QTextView + + name + vclogTV + + + + QLayoutWidget + + name + Layout27 + + + + margin + 0 + + + spacing + 6 + + + + name + Spacer3 + + + orientation + Horizontal + + + sizeType + Expanding + + + sizeHint + + 20 + 20 + + + + + QPushButton + + name + updatePB + + + text + &Update + + + default + true + + + toolTip + Update the display + + + + QPushButton + + name + closePB + + + text + &Close + + + + + + + + + updatePB + clicked() + QVCLogDialogBase + updateClicked() + + updateClicked() + + + vclogTV + updatePB + closePB + +