// -*- C++ -*- /** * \file ControlTexinfo.h * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * * \author Herbert Voß * * Full author contact details are available in file CREDITS. */ #ifndef CONTROLTEXINFO_H #define CONTROLTEXINFO_H #include "Dialog.h" #include "tex_helpers.h" namespace lyx { namespace frontend { /** A controller for Texinfo dialogs. */ class ControlTexinfo : public Dialog::Controller { public: /// ControlTexinfo(Dialog &); /// Nothing to initialise in this case. virtual bool initialiseParams(std::string const &) { return true; } /// virtual void clearParams() {} /// virtual void dispatchParams() {} /// virtual bool isBufferDependent() const { return false; } /// the file extensions enum texFileSuffix {cls, sty, bst}; /// show contents af a file void viewFile(std::string const & filename) const; /// show all classoptions std::string const getClassOptions(std::string const & filename) const; /// return file type as string std::string const getFileType(ControlTexinfo::texFileSuffix type) const; private: /// virtual void apply() {} }; /** Fill \c contents from one of the three texfiles. * Each entry in the file list is returned as a pair */ void getTexFileList(ControlTexinfo::texFileSuffix type, std::vector & contents, bool withPath); } // namespace frontend } // namespace lyx #endif // CONTROLTEXINFO_H