X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyx_main.h;h=ab1619f97e7372a30b189ec50a4817141ad1ee43;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=24b3f79c2fd6826151879c0b12dc02c85a8f146e;hpb=1f8fe293847e941f4737dc09064b5dc877494f21;p=lyx.git diff --git a/src/lyx_main.h b/src/lyx_main.h index 24b3f79c2f..ab1619f97e 100644 --- a/src/lyx_main.h +++ b/src/lyx_main.h @@ -17,47 +17,47 @@ #include #include -#include #include #include +namespace lyx { + class Buffer; class BufferList; class ErrorItem; +class IconvProcessor; class InsetBase; class LyXFunc; class LyXServer; class LyXServerSocket; class LyXView; +class Session; class kb_keymap; - -namespace lyx { extern bool use_gui; -class Session; -namespace frontend { -class Application; -} -} + +namespace frontend { class Application; } /// initial startup class LyX : boost::noncopyable { public: + + LyX(); + ~LyX(); + /** * Execute LyX. The startup sequence is as follows: * -# LyX::exec() * -# LyX::priv_exec() * -# lyx::createApplication() - * -# LyX::exec2() * Step 3 is omitted if no gui is wanted. We need lyx::createApplication() * only to create the QApplication object in the qt frontend. All * attempts with static and dynamically allocated QApplication * objects lead either to harmless error messages on exit * ("Mutex destroy failure") or crashes (OS X). */ - static int exec(int & argc, char * argv[]); - /// Execute LyX (inner execution loop, \sa exec) - int exec2(int & argc, char * argv[]); + int exec(int & argc, char * argv[]); + static LyX & ref(); static LyX const & cref(); @@ -69,14 +69,14 @@ public: In GUI mode, after this function has been called, application_ leaves the main event loop and returns from the call to Application::start(). */ - void quit(bool noask); + void quit(); /// BufferList & bufferList(); BufferList const & bufferList() const; /// - lyx::Session & session(); - lyx::Session const & session() const; + Session & session(); + Session const & session() const; /// LyXFunc & lyxFunc(); LyXFunc const & lyxFunc() const; @@ -88,14 +88,17 @@ public: LyXServerSocket const & socket() const; /// - lyx::frontend::Application & application(); - lyx::frontend::Application const & application() const; + frontend::Application & application(); + frontend::Application const & application() const; /// kb_keymap & topLevelKeymap(); kb_keymap const & topLevelKeymap() const; - void addLyXView(LyXView * lyxview); + /// + IconvProcessor & iconvProcessor(); + + LyXView * newLyXView(); /** redraw \c inset in all the BufferViews in which it is currently * visible. If successful return a pointer to the owning Buffer. @@ -103,11 +106,6 @@ public: Buffer const * const updateInset(InsetBase const *) const; private: - static boost::scoped_ptr singleton_; - - LyX(); - int priv_exec(int & argc, char * argv[]); - /// Do some cleanup in preparation of an exit. void prepareExit(); @@ -162,12 +160,11 @@ private: /// Use the Pimpl idiom to hide the internals. struct Singletons; boost::scoped_ptr pimpl_; - /// - typedef std::list ViewList; - ViewList views_; /// bool geometryOption_; }; +} // namespace lyx + #endif // LYX_MAIN_H