VR-Forces 4.1 Class Documentation
menu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2000 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: menu.h,v $ $Revision: 1.8 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef MENU_H
13 #define MENU_H
14 
15 #include "vrfGuiCommon/menuEntry.h"
16 #include <QtCore/QString>
17 
18 class DtObjectType;
19 class DtEntityMapperKey;
20 class DtFilename;
21 
25 
28 {
29 
30 public:
31 
33  DtMenu
34  (
35  const DtString& name,
36  DtReaderWriterRegistry* const parentRegistry = NULL
37  );
38 
40  virtual ~DtMenu();
41 
43  DtMenu(const DtMenu& orig);
44 
46  DtMenu& operator=(const DtMenu& orig);
47  virtual bool operator==(const DtMenuEntry&) const;
48 
49  virtual const DtList& entries() const;
50 
51  virtual void getSelf(DtlObjPtr args, const DtFilename& searchPath,
52  const DtVariableBindingsList& variableBindings);
53 
54  virtual DtlObjPtr getLocalData(DtlObjPtr args);
55 
56  virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath,
57  const DtVariableBindingsList& variableBindings);
58 
59  virtual void addObject(const QString& item, const DtObjectType& type, int force, const QString& at = QString::null);
60  virtual void addEntity(const QString& item, const DtObjectType& type, int force, const QString& at = QString::null);
61 
65  virtual bool creationKeyFor(const QString& name, DtEntityMapperKey& retKey) const;
66 
68  virtual bool load(const DtFilename&);
69 
71  virtual bool save(const DtFilename&);
72 
74  virtual void setComment(const QString&);
75  virtual const QString& comment() const;
76 
78  virtual DtMenuEntry* findEntry(DtMenuEntry*) const;
79 
81  virtual DtMenuEntry* findEntry(const DtString&, bool recurse = false) const;
82 
84  virtual void merge(DtMenu*);
85 
86  virtual void add(DtMenuEntry*);
87 
88  virtual DtMenuEntry* clone() const;
89 
91  const DtFilename& filename() const;
92  void setFilename(const DtFilename&);
93 
94 protected:
95  virtual void copyMenuEntries(const DtList*);
96  virtual void merge(DtMenuEntry*);
97 
98 protected:
99  virtual void addMenuItem(const QString& item, const DtObjectType& type, int force, const char* name, const QString& at);
100  virtual void writeSelf(FILE* fp, int i, bool writeUnspecified,
101  const DtFilename& path);
102 
103 protected:
104  DtList myEntries;
105  QString myComment;
106  DtFilename myFilename;
107 };
108 
109 inline const DtFilename& DtMenu::filename() const
110 {
111  return myFilename;
112 }
113 
114 inline void DtMenu::setFilename(const DtFilename& f)
115 {
116  myFilename = f;
117 }
118 
119 #endif

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)