22 const bool wantStereoVisual,
26 m_cursorVisible(
true),
29 m_cursorGrabInitPos{0, 0},
30 m_cursorGrabAccumPos{0, 0},
32 m_progressBarVisible(
false),
33 m_canAcceptDragOperation(
false),
34 m_isUnsavedChanges(
false),
36 m_windowDecorationStyleSettings(),
37 m_wantStereoVisual(wantStereoVisual),
38 m_nativePixelSize(1.0f),
85 if (m_context !=
nullptr) {
128#ifdef WITH_VULKAN_BACKEND
129GHOST_TSuccess GHOST_Window::getVulkanSwapChainFormat(GHOST_VulkanSwapChainData *r_swap_chain_data)
131 return m_context->getVulkanSwapChainFormat(r_swap_chain_data);
168 if (mouse_ungrab_xy) {
204 bool &use_software_cursor)
238 uint8_t *bitmap,
uint8_t *
mask,
int sizex,
int sizey,
int hotX,
int hotY,
bool canInvertColor)
KDTree *BLI_kdtree_nd_ new(unsigned int nodes_len_capacity)
@ GHOST_kWindowStateFullScreen
@ GHOST_kStandardCursorCustom
@ GHOST_kStandardCursorDefault
GHOST_TDrawingContextType
@ GHOST_kDrawingContextTypeNone
GHOST_TWindowDecorationStyleFlags
static btDbvtVolume bounds(btDbvtNode **leaves, int count)
unsigned int getDefaultFramebuffer() override
virtual GHOST_TSuccess releaseNativeHandles()=0
virtual GHOST_TSuccess setSwapInterval(int)
virtual GHOST_TSuccess updateDrawingContext()
GHOST_TSuccess activateDrawingContext() override=0
virtual GHOST_TSuccess getSwapInterval(int &)
GHOST_TSuccess swapBuffers() override=0
virtual void getClientBounds(GHOST_Rect &bounds) const =0
GHOST_TWindowDecorationStyleFlags m_windowDecorationStyleFlags
GHOST_TSuccess setCustomCursorShape(uint8_t *bitmap, uint8_t *mask, int sizex, int sizey, int hotX, int hotY, bool canInvertColor) override
GHOST_TSuccess getSwapInterval(int &intervalOut) override
GHOST_Rect m_cursorGrabBounds
GHOST_WindowDecorationStyleSettings m_windowDecorationStyleSettings
bool getCursorGrabUseSoftwareDisplay() override
virtual void setWindowDecorationStyleSettings(GHOST_WindowDecorationStyleSettings decorationSettings) override
GHOST_TSuccess getCursorGrabBounds(GHOST_Rect &bounds) const override
void * getOSWindow() const override
GHOST_TGrabCursorMode m_cursorGrab
int32_t m_cursorGrabInitPos[2]
GHOST_TSuccess setDrawingContextType(GHOST_TDrawingContextType type) override
GHOST_TStandardCursor m_cursorShape
GHOST_Context * getContext()
bool canAcceptDragOperation() const override
GHOST_TSuccess setCursorGrab(GHOST_TGrabCursorMode mode, GHOST_TAxisFlag wrap_axis, GHOST_Rect *bounds, int32_t mouse_ungrab_xy[2]) override
unsigned int getDefaultFramebuffer() override
GHOST_TSuccess setSwapInterval(int interval) override
virtual GHOST_TSuccess setWindowCursorGrab(GHOST_TGrabCursorMode)
virtual GHOST_TWindowDecorationStyleFlags getWindowDecorationStyleFlags() override
GHOST_TSuccess releaseNativeHandles()
GHOST_TSuccess setCursorShape(GHOST_TStandardCursor cursorShape) override
GHOST_TAxisFlag m_cursorGrabAxis
virtual GHOST_TSuccess setWindowCustomCursorShape(uint8_t *bitmap, uint8_t *mask, int szx, int szy, int hotX, int hotY, bool canInvertColor)=0
bool getModifiedState() override
GHOST_TSuccess setCursorVisibility(bool visible) override
GHOST_TSuccess getCursorBitmap(GHOST_CursorBitmapRef *bitmap) override
virtual GHOST_TSuccess setWindowCursorVisibility(bool visible)=0
GHOST_TDrawingContextType m_drawingContextType
GHOST_TSuccess activateDrawingContext() override
GHOST_TSuccess swapBuffers() override
uint32_t m_fullScreenHeight
GHOST_IContext * getDrawingContext() override
GHOST_Window(uint32_t width, uint32_t height, GHOST_TWindowState state, const bool wantStereoVisual=false, const bool exclusive=false)
void getCursorGrabState(GHOST_TGrabCursorMode &mode, GHOST_TAxisFlag &wrap_axis, GHOST_Rect &bounds, bool &use_software_cursor) override
GHOST_TSuccess updateDrawingContext()
virtual void setWindowDecorationStyleFlags(GHOST_TWindowDecorationStyleFlags styleFlags) override
void setAcceptDragOperation(bool canAccept) override
GHOST_TSuccess setModifiedState(bool isUnsavedChanges) override
virtual GHOST_TSuccess setWindowCursorShape(GHOST_TStandardCursor shape)=0
virtual GHOST_Context * newDrawingContext(GHOST_TDrawingContextType type)=0
bool m_canAcceptDragOperation
uint32_t m_fullScreenWidth
#define assert(assertion)
ccl_device_inline float2 mask(const MaskType mask, const float2 a)