]> git.lyx.org Git - lyx.git/blob - src/frontends/qt2/QTexinfo.C
f10bed706bcc04af2ed2558d5990584246dd3b2a
[lyx.git] / src / frontends / qt2 / QTexinfo.C
1 /**
2  * \file QTexinfo.C
3  * Copyright 2002 the LyX Team
4  * Read the file COPYING
5  *
6  * \author Edwin Leuven <leuven@fee.uva.nl>
7  */
8
9 #include <config.h>
10
11 #include <vector>
12
13 #ifdef __GNUG__
14 #pragma implementation
15 #endif
16
17 #include "ControlTexinfo.h"
18 #include "QTexinfoDialog.h"
19 #include "QTexinfo.h"
20 #include "Qt2BC.h"
21 #include "gettext.h"
22 #include "helper_funcs.h"
23
24 #include <qlistbox.h>
25 #include <qpushbutton.h>
26 #include <qcheckbox.h>
27
28 using std::vector;
29
30 typedef Qt2CB<ControlTexinfo, Qt2DB<QTexinfoDialog> > base_class;
31
32 QTexinfo::QTexinfo(ControlTexinfo & c)
33         : base_class(c, _("LaTeX Information")), warningPosted(false), activeStyle(ControlTexinfo::cls)
34
35 {
36 }
37
38
39 void QTexinfo::build_dialog()
40 {
41         dialog_.reset(new QTexinfoDialog(this));
42
43         updateStyles(ControlTexinfo::cls);
44
45         bc().setCancel(dialog_->closePB);
46 }
47
48
49 void QTexinfo::updateStyles(ControlTexinfo::texFileSuffix whichStyle)
50 {
51         bool const withFullPath = dialog_->path->isChecked();
52
53         string const str =  controller().getContents(whichStyle, withFullPath);
54         std::vector<string> flist = getVectorFromString(str,"\n");
55
56         dialog_->fileList->clear();
57
58         for (vector<string>::const_iterator fitem = flist.begin();
59                 fitem != flist.end(); ++fitem) {
60                 dialog_->fileList->insertItem((*fitem).c_str());
61         }
62
63         activeStyle = whichStyle;
64 }
65
66
67 void QTexinfo::updateStyles()
68 {
69         updateStyles(activeStyle);
70 }