2 * \file ControlBibtex.C
3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
10 * Full author contact details are available in file CREDITS
15 #include "ControlBibtex.h"
20 #include "helper_funcs.h"
21 #include "tex_helpers.h"
24 #include "support/filetools.h"
26 using namespace lyx::support;
32 ControlBibtex::ControlBibtex(Dialog & d)
33 : ControlCommand(d, "bibtex")
37 string const ControlBibtex::Browse(string const & in_name,
39 string const & pattern)
41 pair<string, string> dir1(_("Documents|#o#O"),
42 string(lyxrc.document_path));
43 return browseRelFile(in_name, kernel().buffer()->filePath(),
44 title, pattern, false, dir1);
48 void ControlBibtex::getBibStyles(vector<string> & data) const
52 getTexFileList("bstFiles.lst", data);
53 // test, if we have a valid list, otherwise run rescan
56 getTexFileList("bstFiles.lst", data);
58 vector<string>::iterator it = data.begin();
59 vector<string>::iterator end = data.end();
60 for (; it != end; ++it) {
61 *it = OnlyFilename(*it);
66 void ControlBibtex::getBibFiles(vector<string> & data) const
70 getTexFileList("bibFiles.lst", data);
71 // test, if we have a valid list, otherwise run rescan
74 getTexFileList("bibFiles.lst", data);
76 vector<string>::iterator it = data.begin();
77 vector<string>::iterator end = data.end();
78 for (; it != end; ++it) {
79 *it = OnlyFilename(*it);
84 void ControlBibtex::rescanBibStyles() const