lyx_mirror/src/frontends/qt2/Menubar_pimpl.h
Lars Gullik Bjønnes 99d1627a47 dont use pragma impementation and interface anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6138 a592a061-630c-0410-9148-cb99ea01b6c8
2003-02-13 16:53:15 +00:00

56 lines
1.1 KiB
C++

// -*- C++ -*-
/**
* \file qt2/Menubar_pimpl.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Lars Gullik Bjønnes
* \author John Levon
*
* Full author contact details are available in file CREDITS
*/
#ifndef MENUBAR_PIMPL_H
#define MENUBAR_PIMPL_H
#include "frontends/Menubar.h"
#include "LString.h"
#include <map>
class LyXView;
class QtView;
class MenuBackend;
class QLPopupMenu;
struct Menubar::Pimpl {
public:
Pimpl(LyXView *, MenuBackend const &);
/// opens a top-level submenu given its name
void openByName(string const &);
/// update the state of the menuitems - not needed
void update() {}
/// return the owning view
QtView * view() { return owner_; }
/// return the menu controller
MenuBackend const & backend() { return menubackend_; }
private:
/// owning view
QtView * owner_;
/// menu controller
MenuBackend const & menubackend_;
typedef std::map<string, QLPopupMenu *> NameMap;
/// name to menu for openByName
NameMap name_map_;
};
#endif // MENUBAR_PIMPL_H