mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-09-22 07:57:22 +00:00
2e7d1199df
Sorry, Andre, but this broke not only the modules stuff but the general handling of TextClasses. I'm not opposed to doing this sort of thing, but it's going to be a little more complicated. I'll do it when I get a bit of time, or I can explain what the issue is here if you want to do it. I'll separately re-commit some of the cleanup here. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23189 a592a061-630c-0410-9148-cb99ea01b6c8
82 lines
1.7 KiB
C++
82 lines
1.7 KiB
C++
// -*- C++ -*-
|
|
/**
|
|
* \file TextClassList.h
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author Lars Gullik Bjønnes
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#ifndef TEXTCLASSLIST_H
|
|
#define TEXTCLASSLIST_H
|
|
|
|
#include "TextClass.h"
|
|
|
|
#include "support/strfwd.h"
|
|
#include "support/types.h"
|
|
|
|
#include <vector>
|
|
|
|
|
|
namespace lyx {
|
|
|
|
class Layout;
|
|
|
|
/// Reads the style files
|
|
extern bool LyXSetStyle();
|
|
|
|
///
|
|
class TextClassList {
|
|
public:
|
|
///
|
|
TextClassList() {}
|
|
///
|
|
typedef std::vector<TextClass> ClassList;
|
|
///
|
|
typedef ClassList::const_iterator const_iterator;
|
|
///
|
|
const_iterator begin() const { return classlist_.begin(); }
|
|
///
|
|
const_iterator end() const { return classlist_.end(); }
|
|
///
|
|
bool empty() const { return classlist_.empty(); }
|
|
|
|
/// Gets textclass number from name, -1 if textclass name does not exist
|
|
std::pair<bool, textclass_type> const
|
|
numberOfClass(std::string const & textclass) const;
|
|
|
|
///
|
|
TextClass const & operator[](textclass_type textclass) const;
|
|
|
|
/// Read textclass list. Returns false if this fails.
|
|
bool read();
|
|
|
|
/// Clears the textclass so as to force it to be reloaded
|
|
void reset(textclass_type const textclass);
|
|
|
|
/// add a textclass from user local directory.
|
|
/// Return ture/false, and textclass number
|
|
std::pair<bool, textclass_type> const
|
|
addTextClass(std::string const & textclass, std::string const & path);
|
|
|
|
private:
|
|
/// noncopyable
|
|
TextClassList(TextClassList const &);
|
|
void operator=(TextClassList const &);
|
|
|
|
///
|
|
mutable ClassList classlist_;
|
|
};
|
|
|
|
///
|
|
extern TextClassList textclasslist;
|
|
///
|
|
textclass_type defaultTextclass();
|
|
|
|
|
|
} // namespace lyx
|
|
|
|
#endif
|