diff options
Diffstat (limited to 'test/src')
-rw-r--r-- | test/src/example.cpp | 27 | ||||
-rw-r--r-- | test/src/example.h | 12 | ||||
-rw-r--r-- | test/src/register_types.cpp | 1 |
3 files changed, 40 insertions, 0 deletions
diff --git a/test/src/example.cpp b/test/src/example.cpp index f49a230..22739b2 100644 --- a/test/src/example.cpp +++ b/test/src/example.cpp @@ -199,6 +199,8 @@ void Example::_bind_methods() { ClassDB::bind_method(D_METHOD("test_tarray_arg", "array"), &Example::test_tarray_arg); ClassDB::bind_method(D_METHOD("test_tarray"), &Example::test_tarray); ClassDB::bind_method(D_METHOD("test_dictionary"), &Example::test_dictionary); + ClassDB::bind_method(D_METHOD("test_tdictionary_arg", "dictionary"), &Example::test_tdictionary_arg); + ClassDB::bind_method(D_METHOD("test_tdictionary"), &Example::test_tdictionary); ClassDB::bind_method(D_METHOD("test_node_argument"), &Example::test_node_argument); ClassDB::bind_method(D_METHOD("test_string_ops"), &Example::test_string_ops); ClassDB::bind_method(D_METHOD("test_str_utility"), &Example::test_str_utility); @@ -552,6 +554,23 @@ Dictionary Example::test_dictionary() const { return dict; } +int Example::test_tdictionary_arg(const TypedDictionary<String, int64_t> &p_dictionary) { + int sum = 0; + TypedArray<int64_t> values = p_dictionary.values(); + for (int i = 0; i < p_dictionary.size(); i++) { + sum += (int)values[i]; + } + return sum; +} + +TypedDictionary<Vector2, Vector2i> Example::test_tdictionary() const { + TypedDictionary<Vector2, Vector2i> dict; + + dict[Vector2(1, 2)] = Vector2i(2, 3); + + return dict; +} + Example *Example::test_node_argument(Example *p_node) const { return p_node; } @@ -741,3 +760,11 @@ ExampleRuntime::ExampleRuntime() { ExampleRuntime::~ExampleRuntime() { } + +void ExamplePrzykład::_bind_methods() { + ClassDB::bind_method(D_METHOD("get_the_word"), &ExamplePrzykład::get_the_word); +} + +String ExamplePrzykład::get_the_word() const { + return U"słowo to przykład"; +} diff --git a/test/src/example.h b/test/src/example.h index 40f934f..a7ae54c 100644 --- a/test/src/example.h +++ b/test/src/example.h @@ -129,6 +129,8 @@ public: int test_tarray_arg(const TypedArray<int64_t> &p_array); TypedArray<Vector2> test_tarray() const; Dictionary test_dictionary() const; + int test_tdictionary_arg(const TypedDictionary<String, int64_t> &p_dictionary); + TypedDictionary<Vector2, Vector2i> test_tdictionary() const; Example *test_node_argument(Example *p_node) const; String test_string_ops() const; String test_str_utility() const; @@ -274,4 +276,14 @@ public: ~ExampleRuntime(); }; +class ExamplePrzykład : public RefCounted { + GDCLASS(ExamplePrzykład, RefCounted); + +protected: + static void _bind_methods(); + +public: + String get_the_word() const; +}; + #endif // EXAMPLE_CLASS_H diff --git a/test/src/register_types.cpp b/test/src/register_types.cpp index 7cfe689..d9290c8 100644 --- a/test/src/register_types.cpp +++ b/test/src/register_types.cpp @@ -30,6 +30,7 @@ void initialize_example_module(ModuleInitializationLevel p_level) { GDREGISTER_CLASS(ExampleBase); GDREGISTER_CLASS(ExampleChild); GDREGISTER_RUNTIME_CLASS(ExampleRuntime); + GDREGISTER_CLASS(ExamplePrzykład); } void uninitialize_example_module(ModuleInitializationLevel p_level) { |