VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
uniqueNameManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
15 #include <list>
16 #include <vlutil/vlString.h>
17 #include <set>
18 #include <map>
19 
21 
22 
24 {
25 public:
26 
27  static const DtString AnyPartCategory;
28  virtual ~DtUniqueNameManager();
29 
30 private:
31 
34  DtUniqueNameManager& operator=(const DtUniqueNameManager& orig);
35 
36 public:
37 
38  static DtUniqueNameManager* instance();
39 
41  virtual void addUniqueNameElement(DtUiUniqueNameElement* element);
42 
44  virtual void removeUniqueNameElement(DtUiUniqueNameElement* element);
45 
48  virtual DtString getNextUniqueName(const DtString& preferredName,
49  const DtUiUniqueNameElement* element) const;
50 
53  virtual bool isNameUnique(const DtString& preferredName,
54  const DtUiUniqueNameElement* element) const;
55 
56 
57 protected:
58 
59  typedef std::list<DtUiUniqueNameElement*> DtUniqueNameElementList;
60  typedef std::map<DtString, DtUniqueNameElementList> DtUniqueNameElementsByCategory;
62 };
Element for managing a Unique Name variable. It hooks to the DtUniqueNameManager to auto-assign a uni...
Definition: uiUniqueNameElement.h:20
Definition: uniqueNameManager.h:23
std::map< DtString, DtUniqueNameElementList > DtUniqueNameElementsByCategory
Definition: uniqueNameManager.h:60
DtUniqueNameElementsByCategory myManagedElements
Definition: uniqueNameManager.h:61
std::list< DtUiUniqueNameElement * > DtUniqueNameElementList
Definition: uniqueNameManager.h:59
static const DtString AnyPartCategory
Definition: uniqueNameManager.h:27
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)