3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
8 * Full author contact details are available in file CREDITS
14 #include "ControlTexinfo.h"
15 #include "QTexinfoDialog.h"
18 #include "qt_helpers.h"
19 #include "helper_funcs.h"
21 #include "support/lstrings.h"
24 #include <qpushbutton.h>
25 #include <qcheckbox.h>
29 typedef Qt2CB<ControlTexinfo, Qt2DB<QTexinfoDialog> > base_class;
33 : base_class(_("LyX: LaTeX Information")),
34 warningPosted(false), activeStyle(ControlTexinfo::cls)
39 void QTexinfo::build_dialog()
41 dialog_.reset(new QTexinfoDialog(this));
43 updateStyles(ControlTexinfo::cls);
45 bcview().setCancel(dialog_->closePB);
49 void QTexinfo::updateStyles(ControlTexinfo::texFileSuffix whichStyle)
51 string const fstr = controller().getContents(whichStyle, true);
54 case ControlTexinfo::bst:
55 bst_ = getVectorFromString(fstr, "\n");
57 case ControlTexinfo::cls:
58 cls_ = getVectorFromString(fstr, "\n");
60 case ControlTexinfo::sty:
61 sty_ = getVectorFromString(fstr, "\n");
65 dialog_->fileList->clear();
67 bool const withFullPath = dialog_->path->isChecked();
68 string const str = controller().getContents(whichStyle, withFullPath);
69 vector<string> flist = getVectorFromString(str, "\n");
70 for (vector<string>::const_iterator fitem = flist.begin();
71 fitem != flist.end(); ++fitem) {
72 dialog_->fileList->insertItem(toqstr((*fitem)));
75 activeStyle = whichStyle;
79 void QTexinfo::updateStyles()
81 updateStyles(activeStyle);