BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
qdesigner_internal::DesignerMetaEnum Class Reference
Inheritance diagram for qdesigner_internal::DesignerMetaEnum:
[legend]
Collaboration diagram for qdesigner_internal::DesignerMetaEnum:
[legend]

Public Types

typedef QMap< QString, int > KeyToValueMap
 
enum  SerializationMode { FullyQualified , NameOnly }
 

Public Member Functions

 DesignerMetaEnum ()
 
 DesignerMetaEnum (const QString &name, const QString &scope, const QString &separator)
 
void addKey (int value, const QString &name)
 
const QStringList & keys () const
 
int keyToValue (QString key, bool *ok=0) const
 
const KeyToValueMapkeyToValueMap () const
 
QString messageParseFailed (const QString &s) const
 
QString messageToStringFailed (int value) const
 
const QString & name () const
 
int parseEnum (const QString &s, bool *ok=0) const
 
const QString & scope () const
 
const QString & separator () const
 
QString toString (int value, SerializationMode sm, bool *ok=0) const
 
QString valueToKey (int value, bool *ok=0) const
 

Protected Member Functions

void appendQualifiedName (const QString &key, QString &target) const
 

Private Attributes

QStringList m_keys
 
KeyToValueMap m_keyToValueMap
 
QString m_name
 
QString m_scope
 
QString m_separator
 

Detailed Description

Definition at line 164 of file qdesigner_utils_p.h.

Member Typedef Documentation

◆ KeyToValueMap

typedef QMap<QString, int > qdesigner_internal::MetaEnum< int >::KeyToValueMap
inherited

Definition at line 93 of file qdesigner_utils_p.h.

Member Enumeration Documentation

◆ SerializationMode

Constructor & Destructor Documentation

◆ DesignerMetaEnum() [1/2]

qdesigner_internal::DesignerMetaEnum::DesignerMetaEnum ( const QString &  name,
const QString &  scope,
const QString &  separator 
)

◆ DesignerMetaEnum() [2/2]

qdesigner_internal::DesignerMetaEnum::DesignerMetaEnum ( )
inline

Definition at line 167 of file qdesigner_utils_p.h.

167 {}

Member Function Documentation

◆ addKey()

void qdesigner_internal::MetaEnum< int >::addKey ( int  value,
const QString &  name 
)
inherited

Definition at line 97 of file qdesigner_utils_p.h.

128 {
129  m_keyToValueMap.insert(name, value);
130  m_keys.append(name);
131 }

◆ appendQualifiedName()

void qdesigner_internal::MetaEnum< int >::appendQualifiedName ( const QString &  key,
QString &  target 
) const
protectedinherited

Definition at line 111 of file qdesigner_utils_p.h.

154 {
155  if (!m_scope.isEmpty()) {
156  target += m_scope;
157  target += m_separator;
158  }
159  target += key;
160 }

◆ keys()

const QStringList& qdesigner_internal::MetaEnum< int >::keys ( ) const
inlineinherited

Definition at line 107 of file qdesigner_utils_p.h.

107 { return m_keys; }

◆ keyToValue()

int qdesigner_internal::MetaEnum< int >::keyToValue ( QString  key,
bool *  ok = 0 
) const
inherited

Definition at line 101 of file qdesigner_utils_p.h.

142 {
143  if (!m_scope.isEmpty() && key.startsWith(m_scope))
144  key.remove(0, m_scope.size() + m_separator.size());
145  const typename KeyToValueMap::const_iterator it = m_keyToValueMap.find(key);
146  const bool found = it != m_keyToValueMap.constEnd();
147  if (ok)
148  *ok = found;
149  return found ? it.value() : IntType(0);
150 }

◆ keyToValueMap()

const KeyToValueMap& qdesigner_internal::MetaEnum< int >::keyToValueMap ( ) const
inlineinherited

Definition at line 108 of file qdesigner_utils_p.h.

108 { return m_keyToValueMap; }

◆ messageParseFailed()

QString qdesigner_internal::DesignerMetaEnum::messageParseFailed ( const QString &  s) const

◆ messageToStringFailed()

QString qdesigner_internal::DesignerMetaEnum::messageToStringFailed ( int  value) const

◆ name()

const QString& qdesigner_internal::MetaEnum< int >::name ( ) const
inlineinherited

Definition at line 103 of file qdesigner_utils_p.h.

◆ parseEnum()

int qdesigner_internal::DesignerMetaEnum::parseEnum ( const QString &  s,
bool *  ok = 0 
) const
inline

Definition at line 176 of file qdesigner_utils_p.h.

176 { return keyToValue(s, ok); }
int keyToValue(QString key, bool *ok=0) const

◆ scope()

const QString& qdesigner_internal::MetaEnum< int >::scope ( ) const
inlineinherited

Definition at line 104 of file qdesigner_utils_p.h.

104 { return m_scope; }

◆ separator()

const QString& qdesigner_internal::MetaEnum< int >::separator ( ) const
inlineinherited

Definition at line 105 of file qdesigner_utils_p.h.

105 { return m_separator; }

◆ toString()

QString qdesigner_internal::DesignerMetaEnum::toString ( int  value,
SerializationMode  sm,
bool *  ok = 0 
) const

◆ valueToKey()

QString qdesigner_internal::MetaEnum< int >::valueToKey ( int  value,
bool *  ok = 0 
) const
inherited

Definition at line 99 of file qdesigner_utils_p.h.

134 {
135  const QString rc = m_keyToValueMap.key(value);
136  if (ok)
137  *ok = !rc.isEmpty();
138  return rc;
139 }

Member Data Documentation

◆ m_keys

QStringList qdesigner_internal::MetaEnum< int >::m_keys
privateinherited

Definition at line 118 of file qdesigner_utils_p.h.

◆ m_keyToValueMap

KeyToValueMap qdesigner_internal::MetaEnum< int >::m_keyToValueMap
privateinherited

Definition at line 117 of file qdesigner_utils_p.h.

◆ m_name

QString qdesigner_internal::MetaEnum< int >::m_name
privateinherited

Definition at line 114 of file qdesigner_utils_p.h.

◆ m_scope

QString qdesigner_internal::MetaEnum< int >::m_scope
privateinherited

Definition at line 115 of file qdesigner_utils_p.h.

◆ m_separator

QString qdesigner_internal::MetaEnum< int >::m_separator
privateinherited

Definition at line 116 of file qdesigner_utils_p.h.


The documentation for this class was generated from the following file: