         SetEditable(SetValue(parent.children[1], value.GetBool(), sameValue), editable && sameValue);
     else if (type == VAR_INT)
     {
-        if (info.name.Contains("Mask", false))
+        if (bitSelectionAttrs.Find(info.name) > -1)
             SetEditable(SetValue(parent.GetChild("LineEdit", true), value.ToString(), sameValue), editable && sameValue);
         else if (info.enumNames is null || info.enumNames.empty)
             SetEditable(SetValue(parent.children[1], value.ToString(), sameValue), editable && sameValue);

// Exceptions for string attributes that should not be continuously edited
Array<String> noTextChangedAttrs = {"Script File", "Class Name", "Script Object Type", "Script File Name"};

WeakHandle testAnimState;

bool dragEditAttribute = false;

void UpdateBitSelection(UIElement@ parent)
{
    int mask = 0;
    for (int i = 0; i < MAX_BITMASK_BITS; i++)
    {
        CheckBox@ bitBox = parent.GetChild("BitSelect_" + String(i), true);
        mask = mask | (bitBox.checked ? 1 << i : 0);
    }

    if (mask == MAX_BITMASK_VALUE)
        mask = -1;

    inUpdateBitSelection = true;
