#ifndef LYX_H
#define LYX_H
-#include <boost/scoped_ptr.hpp>
-#include <boost/noncopyable.hpp>
-
-#include <string>
+#include "support/strfwd.h"
namespace lyx {
class Movers;
class Session;
class KeyMap;
+class CmdDef;
extern bool use_gui;
}
/// initial startup
-class LyX : boost::noncopyable {
+class LyX {
public:
LyX();
KeyMap & topLevelKeymap();
KeyMap const & topLevelKeymap() const;
+ ///
+ CmdDef & topLevelCmdDef();
+
///
Converters & converters();
Converters & systemConverters();
void addFileToLoad(support::FileName const &);
private:
+ /// noncopyable
+ LyX(LyX const &);
+ void operator=(LyX const &);
+
/// Do some cleanup in preparation of an exit.
void prepareExit();
/// initial LyX set up
bool init();
- /// set up the default key bindings
- void defaultKeyBindings(KeyMap * kbmap);
/// set up the default dead key bindings if requested
void deadKeyBindings(KeyMap * kbmap);
/** Check for the existence of the user's support directory and,
/// shows up a parsing error on screen
void printError(ErrorItem const &);
+ /// Use the Pimpl idiom to hide the internals.
+ // Mostly used for singletons.
+ struct Impl;
+ Impl * pimpl_;
+
/// has this user started lyx for the first time?
bool first_start;
- /// the parsed command line batch command if any
- std::string batch_command;
-
- /// Use the Pimpl idiom to hide the internals.
- struct Singletons;
- boost::scoped_ptr<Singletons> pimpl_;
friend Movers & theMovers();
friend Mover const & getMover(std::string const & fmt);