VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
simpleMenu.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
7 
8 #pragma once
9 
11 #include <vrvCoreQt/DtMenuItem.h>
12 #include <vrvCoreQt/DtMenu.h>
13 #include <QtGui/QMenu>
14 #include <QtGui/QAction>
15 #include <QtCore/QObject>
16 #include <QtGui/QMessageBox>
17 
18 namespace makVrf
19 {
23  typedef void (DtSimpleMenuItemAction) (makVrv::DtDe& de, void* usr);
24 
32  {
33  public:
34  DtSimpleMenu(makVrv::DtDe& de, std::string menuId, std::string menuText)
35  : makVrv::DtMenu(de, menuId)
36  , myMenuText(menuText)
37  { }
38 
39  virtual ~DtSimpleMenu() { }
40 
42  virtual std::string menuText() { return myMenuText; }
43  QMenu* createMenu(makVrv::DtDe& de, QWidget* parent)
44  {
45  return new QMenu(QObject::tr(myMenuText.c_str()), parent);
46  }
47 
48  protected:
49  std::string myMenuText;
50  };
51 
59  {
60  public:
61  DtSimpleMenuItem(makVrv::DtDe& de, std::string menuItemId, std::string menuItemText)
62  : makVrv::DtMenuItem(menuItemId)
63  , myDe(de)
64  , myMenuItemText(menuItemText)
65  , myActionFunction(0)
66  , myUser(0)
67  { }
68 
69  virtual ~DtSimpleMenuItem()
70  {
71  myActionFunction = 0;
72  myUser = 0;
73  }
74 
76  virtual std::string menuItemText() { return myMenuItemText; }
77 
78  virtual QAction* createAction(makVrv::DtDe&, QWidget* parent)
79  {
80  return new QAction(QObject::tr(myMenuItemText.c_str()), parent);
81  }
82 
89  virtual void setAction(DtSimpleMenuItemAction* actionFunction, void* usr)
90  {
91  myActionFunction = actionFunction;
92  myUser = usr;
93  }
94 
95  protected:
97  void on_triggered()
98  {
99  if (myActionFunction) myActionFunction(myDe, myUser);
100  }
101 
103  void* myUser;
104  std::string myMenuItemText;
106  };
107 
108 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)