VR-Forces 4.8 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvCore
DtMenuPath.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2008 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
/******************************************************************************
6
** $RCSfile: DtMenuPath.h,v $ $Revision: 1.9 $ $State: Exp $
7
******************************************************************************/
8
12
13
#ifndef DtMenuPath_H_
14
#define DtMenuPath_H_
15
16
#include <
vrvCore/vrvCore.h
>
17
#include <string>
18
19
namespace
makVrv
20
{
21
30
class
DT_DLL_VRVCORE
DtMenuPath
31
{
32
public
:
33
34
//Internal class which is used to ensure that it is not possible to incorrectly
35
//build a menu path.
36
struct
DT_DLL_VRVCORE
MenuPathBuilder
37
{
38
public
:
39
friend
class
DtMenuPath
;
40
41
//Add a menu to the path.
42
MenuPathBuilder
menu(
const
std::string& name)
const
;
43
46
DtMenuPath
item(
const
std::string& name)
const
;
47
50
DtMenuPath
operator/(
const
std::string& name)
const
;
51
53
DtMenuPath
separator(
const
std::string& name)
const
;
54
55
protected
:
56
57
//Access the path.
58
inline
const
std::string&
path
()
const
{
return
myPath; }
59
60
//The CTOR this class is automatically created by the DtMenuPath.
61
MenuPathBuilder
(
const
std::string& name);
62
63
std::string
myPath
;
64
};
65
66
//Useful CTOR.
67
DtMenuPath
(
const
MenuPathBuilder
& builder);
68
70
DtMenuPath
(
const
DtMenuPath
& copy);
71
72
//Create an empty menu path.
73
static
DtMenuPath
empty();
74
75
//Create an empty root menu path.
76
static
DtMenuPath
root();
77
78
//Create an empty popup menu path.
79
static
DtMenuPath
popup();
80
81
//Start a main menu.
82
static
MenuPathBuilder
mainMenu(
const
std::string& name);
83
84
//Start a popup menu.
85
static
MenuPathBuilder
popupMenu(
const
std::string& name );
86
87
//Start a relative menu.
88
static
MenuPathBuilder
menu(
const
std::string& name);
89
90
//Get the current path.
91
inline
const
std::string&
path
()
const
{
return
myPath; }
92
95
DtMenuPath
menuPart()
const
;
96
99
DtMenuPath
parentMenu()
const
;
100
102
DtMenuPath
rootParentMenu()
const
;
103
106
std::string name()
const
;
107
109
bool
isEmpty()
const
;
110
112
bool
isAbsolutePath()
const
;
113
115
bool
isMainMenu()
const
;
116
118
bool
isPopupPath()
const
;
119
121
bool
isMenu()
const
;
122
124
bool
isItem()
const
;
125
127
bool
isChildOf(
const
DtMenuPath
& parent)
const
;
128
130
bool
isDescendant(
const
DtMenuPath
& ancestor)
const
;
131
133
bool
isSiblingOf(
const
DtMenuPath
& sibling)
const
;
134
136
bool
isSeparator()
const
;
137
138
bool
operator ==
(
const
DtMenuPath
& other)
const
;
139
bool
operator <(
const
DtMenuPath
& other)
const
;
140
bool
operator !=
(
const
DtMenuPath
& other)
const
;
141
142
protected
:
143
145
DtMenuPath
(
const
std::string& path);
146
148
std::string
myPath
;
149
};
150
151
152
}
153
154
#endif
155
makVrv::DtMenuPath::MenuPathBuilder::myPath
std::string myPath
Definition:
DtMenuPath.h:63
makVrv::DtMenuPath::MenuPathBuilder
Definition:
DtMenuPath.h:36
makVrv::DtMenuPath::path
const std::string & path() const
Definition:
DtMenuPath.h:91
makVrv::DtMenuPath::MenuPathBuilder::path
const std::string & path() const
Definition:
DtMenuPath.h:58
makVrv::DtMenuPath::myPath
std::string myPath
Internal path.
Definition:
DtMenuPath.h:148
DT_DLL_VRVCORE
#define DT_DLL_VRVCORE
Definition:
vrvCore.h:20
makVrv::DtMenuPath
a Class which represents a menu path.
Definition:
DtMenuPath.h:30
makVrv::operator==
bool operator==(const DtTextureAtlasIndexParser::StringOrFloatAttrib &lhs, const DtTextureAtlasIndexParser::StringOrFloatAttrib &rhs)
needed for search comparison code
Definition:
DtTextureAtlasIndexParser.h:153
operator!=
DT_DLL_terrainCS bool operator!=(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
vrvCore.h
Contains DLL export macros.
Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (
www.mak.com
)