8 #include "InstructionOrExpressionContainerMetadata.h"
12 #include "GDCore/Extensions/Metadata/ExpressionMetadata.h"
13 #include "GDCore/Extensions/Metadata/InstructionMetadata.h"
14 #include "GDCore/String.h"
17 class BehaviorsSharedData;
18 class MultipleInstructionMetadata;
19 class InstructionMetadata;
20 class ExpressionMetadata;
21 class PropertyDescriptor;
42 std::shared_ptr<gd::Behavior> instance,
43 std::shared_ptr<gd::BehaviorsSharedData> sharedDatasInstance);
176 const gd::String& copiedConditionName)
override;
199 BehaviorMetadata& SetFullName(
const gd::String& fullname_)
override;
200 BehaviorMetadata& SetDefaultName(
const gd::String& defaultName_);
201 BehaviorMetadata& SetDescription(
const gd::String& description_)
override;
202 BehaviorMetadata& SetGroup(
const gd::String& group_);
211 BehaviorMetadata& SetIncludeFile(
const gd::String& includeFile)
override;
216 BehaviorMetadata& AddIncludeFile(
const gd::String& includeFile)
override;
223 BehaviorMetadata& AddRequiredFile(
const gd::String& requiredFile);
244 const gd::String& GetFullName()
const override {
return fullname; }
245 const gd::String& GetDefaultName()
const {
return defaultName; }
246 const gd::String& GetDescription()
const override {
return description; }
247 const gd::String& GetGroup()
const {
return group; }
248 const gd::String& GetIconFilename()
const override {
return iconFilename; }
254 objectType = objectType_;
268 const std::vector<gd::String>& GetRequiredBehaviorTypes()
const;
315 std::map<gd::String, gd::PropertyDescriptor> GetProperties()
const;
333 std::map<gd::String, gd::PropertyDescriptor> GetSharedProperties()
const;
339 std::map<gd::String, gd::InstructionMetadata>&
GetAllActions()
override {
return actionsInfos; };
344 std::map<gd::String, gd::InstructionMetadata>&
GetAllConditions()
override {
return conditionsInfos; };
349 std::map<gd::String, gd::ExpressionMetadata>&
GetAllExpressions()
override {
return expressionsInfos; };
356 std::map<gd::String, gd::InstructionMetadata> conditionsInfos;
357 std::map<gd::String, gd::InstructionMetadata> actionsInfos;
358 std::map<gd::String, gd::ExpressionMetadata> expressionsInfos;
359 std::map<gd::String, gd::ExpressionMetadata> strExpressionsInfos;
361 std::vector<gd::String> includeFiles;
362 std::vector<gd::String> requiredFiles;
374 mutable std::vector<gd::String> requiredBehaviors;
375 bool isPrivate =
false;
376 bool isHidden =
false;
379 std::shared_ptr<gd::Behavior> instance;
380 std::shared_ptr<gd::BehaviorsSharedData> sharedDatasInstance;
382 static const std::map<gd::String, gd::PropertyDescriptor> badProperties;
Base class used to represents a behavior that can be applied to an object. It stores the content (i....
Definition: Behavior.h:23
Base class for defining data shared by behaviors having the same type and name.
Definition: BehaviorsSharedData.h:24
String represents an UTF8 encoded string.
Definition: String.h:31
Definition: CommonTools.h:24