/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #include #pragma once namespace LUAEditor { union QTBlockState { struct BlockState { AZ::u32 m_uninitialized : 1; //using semantic negative here. because qt by default will set our int to -1 and we need to detect that AZ::u32 m_folded : 1; //have be careful with folded, it is handled differently, syntax highlighter must preserve existing value of it. AZ::u32 m_foldLevel : 14; AZ::u32 m_syntaxHighlighterState : 3; AZ::u32 m_syntaxHighlighterStateExtra : 13; }; BlockState m_blockState; int m_qtBlockState; }; static_assert(sizeof(QTBlockState) == sizeof(int), "QT stores block state in an int"); }