ARGoS  3
A parallel, multi-engine simulator for swarm robotics
qtopengl_lua_statetree_item.cpp
Go to the documentation of this file.
1 
8 #include <cstdio>
9 
10 namespace argos {
11 
12  /****************************************/
13  /****************************************/
14 
16  m_pcParent(pc_parent) {}
17 
18  /****************************************/
19  /****************************************/
20 
22  CQTOpenGLLuaStateTreeItem* pc_parent) :
23  m_listData(list_data),
24  m_pcParent(pc_parent) {}
25 
26  /****************************************/
27  /****************************************/
28 
30  qDeleteAll(m_listChildren);
31  }
32 
33  /****************************************/
34  /****************************************/
35 
37  return m_pcParent;
38  }
39 
40  /****************************************/
41  /****************************************/
42 
44  return m_listChildren.value(un_idx);
45  }
46 
47  /****************************************/
48  /****************************************/
49 
51  m_listChildren.append(pc_child);
52  }
53 
54  /****************************************/
55  /****************************************/
56 
58  m_listChildren.removeOne(pc_child);
59  }
60 
61  /****************************************/
62  /****************************************/
63 
65  return m_listChildren.count();
66  }
67 
68  /****************************************/
69  /****************************************/
70 
72  const CQTOpenGLLuaStateTreeItem* pc_i2) {
73  if(pc_i1->GetData(0).type() == QVariant::Double &&
74  pc_i2->GetData(0).type() == QVariant::Double) {
75  return pc_i1->GetData(0).toDouble() < pc_i2->GetData(0).toDouble();
76  }
77  else {
78  return pc_i1->GetData(0).toString().toLower() < pc_i2->GetData(0).toString().toLower();
79  }
80  }
81 
83  qSort(m_listChildren.begin(), m_listChildren.end(), ItemLessThan);
84  foreach(CQTOpenGLLuaStateTreeItem* pcItem, m_listChildren) {
85  pcItem->SortChildren();
86  }
87  }
88 
89  /****************************************/
90  /****************************************/
91 
92  QVariant CQTOpenGLLuaStateTreeItem::GetData(int n_col) const {
93  return m_listData.value(n_col);
94  }
95 
96  /****************************************/
97  /****************************************/
98 
100  if(m_pcParent != NULL) {
101  return m_pcParent->m_listChildren.indexOf(const_cast<CQTOpenGLLuaStateTreeItem*>(this));
102  }
103  else {
104  return 0;
105  }
106  }
107 
108  /****************************************/
109  /****************************************/
110 
111 }
argos::CQTOpenGLLuaStateTreeItem::GetNumChildren
size_t GetNumChildren() const
Definition: qtopengl_lua_statetree_item.cpp:64
argos::CQTOpenGLLuaStateTreeItem::AddChild
void AddChild(CQTOpenGLLuaStateTreeItem *pc_child)
Definition: qtopengl_lua_statetree_item.cpp:50
argos::CQTOpenGLLuaStateTreeItem::GetRow
int GetRow()
Definition: qtopengl_lua_statetree_item.cpp:99
argos::CQTOpenGLLuaStateTreeItem::GetData
QVariant GetData(int n_col) const
Definition: qtopengl_lua_statetree_item.cpp:92
argos
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
argos::CQTOpenGLLuaStateTreeItem::GetChild
CQTOpenGLLuaStateTreeItem * GetChild(size_t un_idx)
Definition: qtopengl_lua_statetree_item.cpp:43
qtopengl_lua_statetree_item.h
argos::CQTOpenGLLuaStateTreeItem
Definition: qtopengl_lua_statetree_item.h:18
argos::CQTOpenGLLuaStateTreeItem::GetParent
CQTOpenGLLuaStateTreeItem * GetParent()
Definition: qtopengl_lua_statetree_item.cpp:36
argos::CQTOpenGLLuaStateTreeItem::CQTOpenGLLuaStateTreeItem
CQTOpenGLLuaStateTreeItem(CQTOpenGLLuaStateTreeItem *pc_parent=0)
Definition: qtopengl_lua_statetree_item.cpp:15
argos::CQTOpenGLLuaStateTreeItem::~CQTOpenGLLuaStateTreeItem
~CQTOpenGLLuaStateTreeItem()
Definition: qtopengl_lua_statetree_item.cpp:29
argos::ItemLessThan
bool ItemLessThan(const CQTOpenGLLuaStateTreeItem *pc_i1, const CQTOpenGLLuaStateTreeItem *pc_i2)
Definition: qtopengl_lua_statetree_item.cpp:71
argos::CQTOpenGLLuaStateTreeItem::RemoveChild
void RemoveChild(CQTOpenGLLuaStateTreeItem *pc_child)
Definition: qtopengl_lua_statetree_item.cpp:57
argos::CQTOpenGLLuaStateTreeItem::SortChildren
void SortChildren()
Definition: qtopengl_lua_statetree_item.cpp:82