1+ #include " UnrealEnginePythonPrivatePCH.h"
2+
3+ #if WITH_EDITOR
4+
5+ static PyObject *py_ue_feditor_viewport_client_take_high_res_screen_shot (ue_PyFEditorViewportClient *self, PyObject * args)
6+ {
7+ self->editor_viewport_client ->TakeHighResScreenShot ();
8+ self->editor_viewport_client ->Invalidate ();
9+ if (self->editor_viewport_client ->Viewport )
10+ {
11+ FIntPoint point = self->editor_viewport_client ->Viewport ->GetSizeXY ();
12+ if (point.X > 0 && point.Y > 0 )
13+ {
14+ self->editor_viewport_client ->Viewport ->Draw ();
15+ }
16+ }
17+ Py_RETURN_NONE;
18+ }
19+
20+ static PyObject *py_ue_feditor_viewport_client_tick (ue_PyFEditorViewportClient *self, PyObject * args)
21+ {
22+ float delta_seconds = 0 ;
23+ if (!PyArg_ParseTuple (args, " |f:tick" , &delta_seconds))
24+ return nullptr ;
25+ self->editor_viewport_client ->Tick (delta_seconds);
26+ Py_RETURN_NONE;
27+ }
28+
29+ static PyMethodDef ue_PyFEditorViewportClient_methods[] = {
30+ { " take_high_res_screen_shot" , (PyCFunction)py_ue_feditor_viewport_client_take_high_res_screen_shot, METH_VARARGS , " " },
31+ { " tick" , (PyCFunction)py_ue_feditor_viewport_client_tick, METH_VARARGS , " " },
32+ { nullptr } /* Sentinel */
33+ };
34+
35+ static PyObject *ue_PyFEditorViewportClient_str (ue_PyFEditorViewportClient *self)
36+ {
37+ return PyUnicode_FromFormat (" <unreal_engine.FEditorViewportClient %p>" ,
38+ &self->editor_viewport_client .Get ());
39+ }
40+
41+ static PyTypeObject ue_PyFEditorViewportClientType = {
42+ PyVarObject_HEAD_INIT (NULL , 0 )
43+ " unreal_engine.FEditorViewportClient" , /* tp_name */
44+ sizeof (ue_PyFEditorViewportClient), /* tp_basicsize */
45+ 0 , /* tp_itemsize */
46+ 0 , /* tp_dealloc */
47+ 0 , /* tp_print */
48+ 0 , /* tp_getattr */
49+ 0 , /* tp_setattr */
50+ 0 , /* tp_reserved */
51+ 0 , /* tp_repr */
52+ 0 , /* tp_as_number */
53+ 0 , /* tp_as_sequence */
54+ 0 , /* tp_as_mapping */
55+ 0 , /* tp_hash */
56+ 0 , /* tp_call */
57+ (reprfunc)ue_PyFEditorViewportClient_str, /* tp_str */
58+ 0 , /* tp_getattro */
59+ 0 , /* tp_setattro */
60+ 0 , /* tp_as_buffer */
61+ #if PY_MAJOR_VERSION < 3
62+ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_CHECKTYPES, /* tp_flags */
63+ #else
64+ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
65+ #endif
66+ " Unreal Engine FEditorViewportClient" , /* tp_doc */
67+ 0 , /* tp_traverse */
68+ 0 , /* tp_clear */
69+ 0 , /* tp_richcompare */
70+ 0 , /* tp_weaklistoffset */
71+ 0 , /* tp_iter */
72+ 0 , /* tp_iternext */
73+ ue_PyFEditorViewportClient_methods, /* tp_methods */
74+ 0 ,
75+ };
76+
77+ void ue_python_init_feditor_viewport_client (PyObject *ue_module)
78+ {
79+ ue_PyFEditorViewportClientType.tp_new = PyType_GenericNew;
80+ ue_PyFEditorViewportClientType.tp_base = &ue_PyFViewportClientType;
81+
82+ if (PyType_Ready (&ue_PyFEditorViewportClientType) < 0 )
83+ return ;
84+
85+ Py_INCREF (&ue_PyFEditorViewportClientType);
86+ PyModule_AddObject (ue_module, " FEditorViewportClient" , (PyObject *)&ue_PyFEditorViewportClientType);
87+ }
88+
89+ ue_PyFEditorViewportClient *py_ue_is_feditor_viewport_client (PyObject *obj)
90+ {
91+ if (!PyObject_IsInstance (obj, (PyObject *)&ue_PyFEditorViewportClientType))
92+ return nullptr ;
93+ return (ue_PyFEditorViewportClient *)obj;
94+ }
95+
96+ PyObject *py_ue_new_feditor_viewport_client (TSharedRef<FEditorViewportClient> editor_viewport_client)
97+ {
98+ ue_PyFEditorViewportClient *ret = (ue_PyFEditorViewportClient *)PyObject_New (ue_PyFEditorViewportClient, &ue_PyFEditorViewportClientType);
99+ new (&ret->viewport_client .viewport_client ) TSharedRef<FViewportClient>(editor_viewport_client);
100+ new (&ret->editor_viewport_client ) TSharedRef<FEditorViewportClient>(editor_viewport_client);
101+ return (PyObject *)ret;
102+ }
103+ #endif
0 commit comments