3 * \file ControlTexinfo.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef CONTROLTEXINFO_H
13 #define CONTROLTEXINFO_H
17 #include "tex_helpers.h"
19 /** A controller for Texinfo dialogs. */
21 class ControlTexinfo : public Dialog::Controller {
24 ControlTexinfo(Dialog &);
25 /// Nothing to initialise in this case.
26 virtual bool initialiseParams(std::string const &) { return true; }
28 virtual void clearParams() {}
30 virtual void dispatchParams() {}
32 virtual bool isBufferDependent() const { return false; }
35 /// the file extensions
36 enum texFileSuffix {cls, sty, bst};
37 /// show contents af a file
38 void viewFile(std::string const & filename) const;
39 /// show all classoptions
40 std::string const getClassOptions(std::string const & filename) const;
43 virtual void apply() {}
47 /** Fill \c contents from one of the three texfiles.
48 * Each entry in the file list is returned as a pair<name_with_path, name_only>
50 void getTexFileList(ControlTexinfo::texFileSuffix type,
51 std::vector<std::string> & contents);
53 #endif // CONTROLTEXINFO_H