lyx_mirror/src/frontends/qt4/GuiChanges.cpp
André Pönitz 212386be8a merge ButtonController and its view (Qt2BC in this case)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20018 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 05:59:32 +00:00

130 lines
2.3 KiB
C++

/**
* \file GuiChanges.cpp
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author John Levon
* \author Michael Gerz
*
* Full author contact details are available in file CREDITS.
*/
#include <config.h>
#include "GuiChanges.h"
#include "qt_helpers.h"
#include "support/lstrings.h"
#include <QCloseEvent>
#include <QTextBrowser>
using lyx::support::bformat;
namespace lyx {
namespace frontend {
/////////////////////////////////////////////////////////////////////
//
// GuiChangesDialog
//
/////////////////////////////////////////////////////////////////////
GuiChangesDialog::GuiChangesDialog(GuiChanges * form)
: form_(form)
{
setupUi(this);
connect(closePB, SIGNAL(clicked()), form, SLOT(slotClose()));
connect(nextPB, SIGNAL(clicked()), this, SLOT(nextPressed()));
connect(rejectPB, SIGNAL(clicked()), this, SLOT(rejectPressed()));
connect(acceptPB, SIGNAL(clicked()), this, SLOT(acceptPressed()));
}
void GuiChangesDialog::nextPressed()
{
form_->next();
}
void GuiChangesDialog::acceptPressed()
{
form_->accept();
}
void GuiChangesDialog::rejectPressed()
{
form_->reject();
}
void GuiChangesDialog::closeEvent(QCloseEvent *e)
{
form_->slotWMHide();
e->accept();
}
/////////////////////////////////////////////////////////////////////
//
// GuiChanges
//
/////////////////////////////////////////////////////////////////////
GuiChanges::GuiChanges(GuiDialog & parent)
: GuiView<GuiChangesDialog>(parent, _("Merge Changes"))
{
}
void GuiChanges::build_dialog()
{
dialog_.reset(new GuiChangesDialog(this));
bc().setCancel(dialog_->closePB);
bc().addReadOnly(dialog_->acceptPB);
bc().addReadOnly(dialog_->rejectPB);
}
void GuiChanges::update_contents()
{
docstring text;
docstring author = controller().getChangeAuthor();
docstring date = controller().getChangeDate();
if (!author.empty())
text += bformat(_("Change by %1$s\n\n"), author);
if (!date.empty())
text += bformat(_("Change made at %1$s\n"), date);
dialog_->changeTB->setPlainText(toqstr(text));
}
void GuiChanges::next()
{
controller().next();
}
void GuiChanges::accept()
{
controller().accept();
}
void GuiChanges::reject()
{
controller().reject();
}
} // namespace frontend
} // namespace lyx
#include "GuiChanges_moc.cpp"