6 #ifndef GDCORE_OBJECTSCONTAINER_H
7 #define GDCORE_OBJECTSCONTAINER_H
10 #include "GDCore/String.h"
11 #include "GDCore/Project/ObjectGroupsContainer.h"
12 #include "GDCore/Project/ObjectFolderOrObject.h"
16 class SerializerElement;
52 bool HasObjectNamed(
const gd::String& name)
const;
68 Object& GetObject(std::size_t index);
74 const gd::Object& GetObject(std::size_t index)
const;
84 std::size_t GetObjectPosition(
const gd::String& name)
const;
89 std::size_t GetObjectsCount()
const;
101 std::size_t position);
114 std::size_t position);
139 void MoveObject(std::size_t oldIndex, std::size_t newIndex);
149 void MoveObjectFolderOrObjectToAnotherContainerInFolder(
153 std::size_t newPosition);
159 return initialObjects;
165 const std::vector<std::unique_ptr<gd::Object> >&
GetObjects()
const {
166 return initialObjects;
175 std::vector<const ObjectFolderOrObject*> GetAllObjectFolderOrObjects()
const;
181 void AddMissingObjectsInRootFolder();
190 void SerializeObjectsTo(SerializerElement& element)
const;
196 const SerializerElement& element);
200 void SerializeFoldersTo(SerializerElement& element)
const;
206 const SerializerElement& element);
227 std::vector<std::unique_ptr<gd::Object> >
232 std::unique_ptr<gd::ObjectFolderOrObject> rootFolder;
Class representing a folder structure in order to organize objects in folders (to be used with an Obj...
Definition: ObjectFolderOrObject.h:29
A container for objects groups.
Definition: ObjectGroupsContainer.h:29
Represent an object of a platform.
Definition: Object.h:37
Used as a base class for classes that will own objects (see gd::Object).
Definition: ObjectsContainer.h:36
std::vector< std::unique_ptr< gd::Object > > & GetObjects()
Definition: ObjectsContainer.h:158
const ObjectGroupsContainer & GetObjectGroups() const
Return a const reference to the project's objects groups.
Definition: ObjectsContainer.h:222
const std::vector< std::unique_ptr< gd::Object > > & GetObjects() const
Definition: ObjectsContainer.h:165
std::vector< std::unique_ptr< gd::Object > > initialObjects
Objects contained.
Definition: ObjectsContainer.h:228
ObjectGroupsContainer & GetObjectGroups()
Return a reference to the project's objects groups.
Definition: ObjectsContainer.h:217
Base class representing a project (game), including all resources, scenes, objects,...
Definition: Project.h:50
String represents an UTF8 encoded string.
Definition: String.h:31
Definition: CommonTools.h:24