mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-11 21:49:51 +00:00
2b0e8a0d9b
"View" button in TeX information dialog not enabled when file is selected with the keyboard. Problem was that SIGNAL itemSelectionChanged was not connected to anything. Also made some minor stylistic changes to the code. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17614 a592a061-630c-0410-9148-cb99ea01b6c8
110 lines
2.4 KiB
C
110 lines
2.4 KiB
C
/**
|
|
* \file QTexinfoDialog.C
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author Edwin Leuven
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#include <config.h>
|
|
|
|
#include "QTexinfoDialog.h"
|
|
#include "QTexinfo.h"
|
|
|
|
#include <QCheckBox>
|
|
#include <QListWidget>
|
|
#include <QPushButton>
|
|
#include <QCloseEvent>
|
|
|
|
using std::vector;
|
|
using std::string;
|
|
|
|
namespace lyx {
|
|
namespace frontend {
|
|
|
|
|
|
QTexinfoDialog::QTexinfoDialog(QTexinfo * form)
|
|
:form_(form)
|
|
{
|
|
setupUi(this);
|
|
|
|
connect(closePB, SIGNAL(clicked()),
|
|
form, SLOT(slotClose()));
|
|
|
|
connect( viewPB, SIGNAL( clicked() ), this, SLOT( viewClicked() ) );
|
|
connect( whatStyleCO, SIGNAL( activated(const QString&) ), this, SLOT( enableViewPB() ) );
|
|
connect( whatStyleCO, SIGNAL( activated(int) ), this, SLOT( update() ) );
|
|
connect( pathCB, SIGNAL( stateChanged(int) ), this, SLOT( update() ) );
|
|
connect( rescanPB, SIGNAL( clicked() ), this, SLOT( enableViewPB() ) );
|
|
connect( rescanPB, SIGNAL( clicked() ), this, SLOT( rescanClicked() ) );
|
|
connect( fileListLW, SIGNAL( itemClicked(QListWidgetItem*) ), this, SLOT( enableViewPB() ) );
|
|
connect( fileListLW, SIGNAL( itemSelectionChanged() ), this, SLOT( enableViewPB() ) );
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::change_adaptor()
|
|
{
|
|
form_->changed();
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::closeEvent(QCloseEvent * e)
|
|
{
|
|
form_->slotWMHide();
|
|
e->accept();
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::rescanClicked()
|
|
{
|
|
// build new *Files.lst
|
|
rescanTexStyles();
|
|
form_->updateStyles();
|
|
enableViewPB();
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::viewClicked()
|
|
{
|
|
vector<string>::size_type const fitem = fileListLW->currentRow();
|
|
vector<string> const & data = form_->texdata_[form_->activeStyle];
|
|
string file = data[fitem];
|
|
if (!pathCB->isChecked())
|
|
file = getTexFileFromList(data[fitem],
|
|
form_->controller().getFileType(form_->activeStyle));
|
|
form_->controller().viewFile(file);
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::update()
|
|
{
|
|
switch (whatStyleCO->currentIndex()) {
|
|
case 0:
|
|
form_->updateStyles(ControlTexinfo::cls);
|
|
break;
|
|
case 1:
|
|
form_->updateStyles(ControlTexinfo::sty);
|
|
break;
|
|
case 2:
|
|
form_->updateStyles(ControlTexinfo::bst);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
enableViewPB();
|
|
}
|
|
|
|
|
|
void QTexinfoDialog::enableViewPB()
|
|
{
|
|
viewPB->setEnabled(fileListLW->currentRow() > -1);
|
|
}
|
|
|
|
} // namespace frontend
|
|
} // namespace lyx
|
|
|
|
#include "QTexinfoDialog_moc.cpp"
|