8 #include "InstructionOrExpressionContainerMetadata.h"
12 #include "GDCore/Extensions/Metadata/ExpressionMetadata.h"
13 #include "GDCore/Extensions/Metadata/InstructionMetadata.h"
14 #include "GDCore/String.h"
15 #include "GDCore/Project/QuickCustomization.h"
18 class BehaviorsSharedData;
19 class MultipleInstructionMetadata;
20 class InstructionMetadata;
21 class ExpressionMetadata;
22 class PropertyDescriptor;
43 std::shared_ptr<gd::Behavior> instance,
44 std::shared_ptr<gd::BehaviorsSharedData> sharedDatasInstance);
177 const gd::String& copiedConditionName)
override;
200 BehaviorMetadata& SetFullName(
const gd::String& fullname_)
override;
201 BehaviorMetadata& SetDefaultName(
const gd::String& defaultName_);
202 BehaviorMetadata& SetDescription(
const gd::String& description_)
override;
203 BehaviorMetadata& SetGroup(
const gd::String& group_);
212 BehaviorMetadata& SetIncludeFile(
const gd::String& includeFile)
override;
217 BehaviorMetadata& AddIncludeFile(
const gd::String& includeFile)
override;
224 BehaviorMetadata& AddRequiredFile(
const gd::String& requiredFile);
245 const gd::String& GetFullName()
const override {
return fullname; }
246 const gd::String& GetDefaultName()
const {
return defaultName; }
247 const gd::String& GetDescription()
const override {
return description; }
248 const gd::String& GetGroup()
const {
return group; }
249 const gd::String& GetIconFilename()
const override {
return iconFilename; }
255 objectType = objectType_;
269 const std::vector<gd::String>& GetRequiredBehaviorTypes()
const;
310 isRelevantForChildObjects =
false;
315 return quickCustomizationVisibility;
319 quickCustomizationVisibility = visibility;
323 BehaviorMetadata &SetOpenFullEditorLabel(
const gd::String& label) {
324 openFullEditorLabel = label;
328 const gd::String& GetOpenFullEditorLabel()
const {
329 return openFullEditorLabel;
347 std::map<gd::String, gd::PropertyDescriptor> GetProperties()
const;
365 std::map<gd::String, gd::PropertyDescriptor> GetSharedProperties()
const;
371 std::map<gd::String, gd::InstructionMetadata>&
GetAllActions()
override {
return actionsInfos; };
376 std::map<gd::String, gd::InstructionMetadata>&
GetAllConditions()
override {
return conditionsInfos; };
381 std::map<gd::String, gd::ExpressionMetadata>&
GetAllExpressions()
override {
return expressionsInfos; };
388 std::map<gd::String, gd::InstructionMetadata> conditionsInfos;
389 std::map<gd::String, gd::InstructionMetadata> actionsInfos;
390 std::map<gd::String, gd::ExpressionMetadata> expressionsInfos;
391 std::map<gd::String, gd::ExpressionMetadata> strExpressionsInfos;
393 std::vector<gd::String> includeFiles;
394 std::vector<gd::String> requiredFiles;
406 mutable std::vector<gd::String> requiredBehaviors;
407 bool isPrivate =
false;
408 bool isHidden =
false;
409 bool isRelevantForChildObjects =
true;
414 std::shared_ptr<gd::Behavior> instance;
415 std::shared_ptr<gd::BehaviorsSharedData> sharedDatasInstance;
417 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
Visibility
Definition: QuickCustomization.h:8
String represents an UTF8 encoded string.
Definition: String.h:33
Definition: CommonTools.h:24