VR-Forces 4.2 Class Documentation
DtMenu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2000 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: DtMenu.h,v $ $Revision: 1.8 $ $State: Exp $
7 *********************************************************************/
11 
14 
15 #pragma once
16 
17 #include <vrfGuiCore/vrfGuiCore.h>
18 #include <vrfGuiCore/DtMenuEntry.h>
19 
20 class DtObjectType;
21 class DtFilename;
22 
23 namespace makVrf
24 {
25  class DtEntityMapperKey;
27  {
28 
29  public:
30 
32  DtMenu
33  (
34  const DtString& name,
35  DtReaderWriterRegistry* const parentRegistry = NULL
36  );
37 
39  virtual ~DtMenu();
40 
42  DtMenu(const DtMenu& orig);
43 
45  DtMenu& operator=(const DtMenu& orig);
46  virtual bool operator==(const DtMenuEntry&) const;
47 
48  virtual const DtList& entries() const;
49 
50  virtual void getSelf(DtlObjPtr args, const DtFilename& searchPath,
51  const DtVariableBindingsList& variableBindings);
52 
53  virtual DtlObjPtr getLocalData(DtlObjPtr args);
54 
55  virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath,
56  const DtVariableBindingsList& variableBindings);
57 
58  virtual void addObject(const DtString& item, const DtObjectType& type, int force, const DtString& at = "");
59  virtual void addEntity(const DtString& item, const DtObjectType& type, int force, const DtString& at = "");
60 
64  virtual bool creationKeyFor(const DtString& name, DtEntityMapperKey& retKey) const;
65 
67  virtual bool load(const DtFilename&);
68 
70  virtual bool save(const DtFilename&);
71 
73  virtual void setComment(const DtString&);
74  virtual const DtString& comment() const;
75 
77  virtual DtMenuEntry* findEntry(DtMenuEntry*) const;
78 
80  virtual DtMenuEntry* findEntry(const DtString&, bool recurse = false) const;
81 
83  virtual void merge(DtMenu*);
84 
85  virtual void add(DtMenuEntry*);
86 
87  virtual DtMenuEntry* clone() const;
88 
90  const DtFilename& filename() const;
91  void setFilename(const DtFilename&);
92 
93  protected:
94  virtual void copyMenuEntries(const DtList*);
95  virtual void merge(DtMenuEntry*);
96 
97  protected:
98  virtual void addMenuItem(const DtString& item, const DtObjectType& type, int force, const char* name, const DtString& at);
99  virtual void writeSelf(FILE* fp, int i, bool writeUnspecified,
100  const DtFilename& path);
101 
102  protected:
103  DtList myEntries;
105  DtFilename myFilename;
106  };
107 
108  inline const DtFilename& DtMenu::filename() const
109  {
110  return myFilename;
111  }
112 
113  inline void DtMenu::setFilename(const DtFilename& f)
114  {
115  myFilename = f;
116  }
117 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)