Skip to content

Commit f47b172

Browse files
author
Roberto De Ioris
committed
improved SColorBlock, started implementation fo color picker
1 parent 7850dd4 commit f47b172

File tree

6 files changed

+35
-3
lines changed

6 files changed

+35
-3
lines changed

Source/UnrealEnginePython/Private/Slate/UEPyFToolBarBuilder.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,8 @@ static PyObject *py_ue_ftool_bar_builder_end_block_group(ue_PyFToolBarBuilder *s
9494

9595
static PyObject *py_ue_ftool_bar_builder_make_widget(ue_PyFToolBarBuilder *self, PyObject * args) {
9696
ue_PySWidget *ret = (ue_PySWidget *)PyObject_New(ue_PySWidget, &ue_PySWidgetType);
97-
new (&ret->s_widget) TSharedRef<SWidget>(self->tool_bar_builder->MakeWidget());
97+
ue_py_setup_swidget(ret);
98+
ret->s_widget = self->tool_bar_builder->MakeWidget();
9899
return (PyObject *)ret;
99100
}
100101

Source/UnrealEnginePython/Private/Slate/UEPySColorBlock.cpp

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,17 @@ PyTypeObject ue_PySColorBlockType = {
4141
};
4242

4343
static int ue_py_scolor_block_init(ue_PySColorBlock *self, PyObject *args, PyObject *kwargs) {
44-
ue_py_snew_simple(SColorBlock, s_leaf_widget.s_widget);
44+
ue_py_slate_setup_farguments(SColorBlock);
45+
46+
ue_py_slate_farguments_flinear_color("color", Color);
47+
ue_py_slate_farguments_bool("color_is_hsv", ColorIsHSV);
48+
ue_py_slate_farguments_bool("ignore_alpha", IgnoreAlpha);
49+
ue_py_slate_farguments_event("on_mouse_button_down", OnMouseButtonDown, FPointerEventHandler, OnMouseEvent);
50+
ue_py_slate_farguments_bool("show_background_for_alpha", ShowBackgroundForAlpha);
51+
ue_py_slate_farguments_fvector2d("size", Size);
52+
ue_py_slate_farguments_bool("use_srgb", UseSRGB);
53+
54+
ue_py_snew(SColorBlock, s_leaf_widget.s_widget);
4555
return 0;
4656
}
4757

Source/UnrealEnginePython/Private/UEPyEngine.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
#include "Kismet/KismetSystemLibrary.h"
44
#include "Kismet/KismetMathLibrary.h"
55

6+
#include "Runtime/AppFramework/Public/Widgets/Colors/SColorPicker.h"
7+
68
PyObject *py_unreal_engine_log(PyObject * self, PyObject * args) {
79
PyObject *py_message;
810
if (!PyArg_ParseTuple(args, "O:log", &py_message)) {
@@ -699,3 +701,15 @@ PyObject *py_unreal_engine_editor_get_pie_viewport_size(PyObject *self, PyObject
699701
#endif
700702

701703

704+
PyObject *py_unreal_engine_open_color_picker(PyObject *self, PyObject * args) {
705+
FColorPickerArgs color_args;
706+
if (OpenColorPicker(color_args)) {
707+
Py_RETURN_TRUE;
708+
}
709+
Py_RETURN_FALSE;
710+
}
711+
712+
PyObject *py_unreal_engine_destroy_color_picker(PyObject *self, PyObject * args) {
713+
DestroyColorPicker();
714+
Py_RETURN_NONE;
715+
}

Source/UnrealEnginePython/Private/UEPyEngine.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ PyObject *py_unreal_engine_convert_relative_path_to_full(PyObject *, PyObject *)
4545
PyObject *py_unreal_engine_get_viewport_screenshot(PyObject *, PyObject *);
4646
PyObject *py_unreal_engine_get_viewport_size(PyObject *, PyObject *);
4747

48+
PyObject *py_unreal_engine_open_color_picker(PyObject *, PyObject *);
49+
PyObject *py_unreal_engine_destroy_color_picker(PyObject *, PyObject *);
50+
4851
#if WITH_EDITOR
4952
PyObject *py_unreal_engine_editor_get_active_viewport_screenshot(PyObject *, PyObject *);
5053
PyObject *py_unreal_engine_editor_get_pie_viewport_screenshot(PyObject *, PyObject *);

Source/UnrealEnginePython/Private/UEPyModule.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,9 @@ static PyMethodDef unreal_engine_methods[] = {
278278
{ "get_viewport_size", py_unreal_engine_get_viewport_size, METH_VARARGS, "" },
279279

280280
{ "get_game_viewport_client", py_unreal_engine_get_game_viewport_client, METH_VARARGS, "" },
281+
282+
{ "open_color_picker", py_unreal_engine_open_color_picker, METH_VARARGS, "" },
283+
{ "destroy_color_picker", py_unreal_engine_destroy_color_picker, METH_VARARGS, "" },
281284
#if WITH_EDITOR
282285
{ "editor_play_in_viewport", py_unreal_engine_editor_play_in_viewport, METH_VARARGS, "" },
283286
{ "get_editor_pie_game_viewport_client", py_unreal_engine_get_editor_pie_game_viewport_client, METH_VARARGS, "" },

Source/UnrealEnginePython/UnrealEnginePython.Build.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ public UnrealEnginePython(TargetInfo Target)
111111
"MovieScene",
112112
"LevelSequence",
113113
"HTTP",
114-
"UMG"
114+
"UMG",
115+
"AppFramework"
115116
// ... add private dependencies that you statically link with here ...
116117
}
117118
);

0 commit comments

Comments
 (0)