// PRIVATE
        private void settingsChanged()
        {
            showAlways  = QSettings.getInstance().get <int>(QSetting.TagAndLayerType) == (int)QHierarchyTagAndLayerType.Always;
            showType    = (QHierarchyTagAndLayerShowType)QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeShowType);
            sizeIsPixel = QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValueType) == (int)QHierarchyTagAndLayerSizeType.Pixel;
            pixelSize   = QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValuePixel);
            percentSize = QSettings.getInstance().get <float>(QSetting.TagAndLayerSizeValuePercent);
            labelSize   = (QHierarchyTagAndLayerLabelSize)QSettings.getInstance().get <int>(QSetting.TagAndLayerLabelSize);
            enabled     = QSettings.getInstance().get <bool>(QSetting.TagAndLayerShow);
            tagColor    = QSettings.getInstance().getColor(QSetting.TagAndLayerTagLabelColor);
            layerColor  = QSettings.getInstance().getColor(QSetting.TagAndLayerLayerLabelColor);
            labelAlpha  = QSettings.getInstance().get <float>(QSetting.TagAndLayerLabelAlpha);
            showComponentDuringPlayMode = QSettings.getInstance().get <bool>(QSetting.TagAndLayerShowDuringPlayMode);

            QHierarchyTagAndLayerAligment aligment = (QHierarchyTagAndLayerAligment)QSettings.getInstance().get <int>(QSetting.TagAndLayerAligment);

            switch (aligment)
            {
            case QHierarchyTagAndLayerAligment.Left:
                labelStyle.alignment = TextAnchor.MiddleLeft;
                break;

            case QHierarchyTagAndLayerAligment.Center:
                labelStyle.alignment = TextAnchor.MiddleCenter;
                break;

            case QHierarchyTagAndLayerAligment.Right:
                labelStyle.alignment = TextAnchor.MiddleRight;
                break;
            }
        }
 // PRIVATE
 private void settingsChanged()
 {
     showAlways  = QSettings.getInstance().get <int>(QSetting.TagAndLayerType) == (int)QHierarchyTagAndLayerType.Always;
     sizeIsPixel = QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValueType) == (int)QHierarchyTagAndLayerSizeType.Pixel;
     pixelSize   = QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValuePixel);
     percentSize = QSettings.getInstance().get <float>(QSetting.TagAndLayerSizeValuePercent);
     labelSize   = (QHierarchyTagAndLayerLabelSize)QSettings.getInstance().get <int>(QSetting.TagAndLayerLabelSize);
     enabled     = QSettings.getInstance().get <bool>(QSetting.ShowTagLayerComponent);
     showComponentDuringPlayMode = QSettings.getInstance().get <bool>(QSetting.ShowTagLayerComponentDuringPlayMode);
 }
 // PRIVATE
 private void settingsChanged()
 {
     showAlways  = QSettings.getInstance().get<int>(QSetting.TagAndLayerType) == (int)QHierarchyTagAndLayerType.Always;
     sizeIsPixel = QSettings.getInstance().get<int>(QSetting.TagAndLayerSizeValueType) == (int)QHierarchyTagAndLayerSizeType.Pixel;
     pixelSize   = QSettings.getInstance().get<int>(QSetting.TagAndLayerSizeValuePixel);
     percentSize = QSettings.getInstance().get<float>(QSetting.TagAndLayerSizeValuePercent);
     labelSize   = (QHierarchyTagAndLayerLabelSize)QSettings.getInstance().get<int>(QSetting.TagAndLayerLabelSize);
     enabled     = QSettings.getInstance().get<bool>(QSetting.ShowTagLayerComponent);
     showComponentDuringPlayMode = QSettings.getInstance().get<bool>(QSetting.ShowTagLayerComponentDuringPlayMode);
 }
        private void drawTagLayerComponentSettings()
        {
            if (drawComponentCheckBox(QSetting.ShowTagLayerComponent, "Tag And Layer"))
            {
                Rect rect = getControlRect(0, 16);
                drawBackground(rect.x, rect.y, rect.width, 18 * 6 + 5);
                rect.x     += 31;
                rect.width -= 31 + 6;

                drawCheckBoxRight(rect, QSetting.ShowTagLayerComponentDuringPlayMode, "Show Component During Play Mode");
                drawSpace(5);

                // SHOW
                QHierarchyTagAndLayerType tagAndLayerType = (QHierarchyTagAndLayerType)QSettings.getInstance().get <int>(QSetting.TagAndLayerType);
                QHierarchyTagAndLayerType newTagAndLayerType;
                if ((newTagAndLayerType = (QHierarchyTagAndLayerType)EditorGUI.EnumPopup(getControlRect(0, 16, 31, 6), "Show Tag And Layer", tagAndLayerType)) != tagAndLayerType)
                {
                    QSettings.getInstance().set(QSetting.TagAndLayerType, (int)newTagAndLayerType);
                }
                drawSpace(2);

                // LABEL SIZE
                QHierarchyTagAndLayerLabelSize tagAndLayerLabelSize = (QHierarchyTagAndLayerLabelSize)QSettings.getInstance().get <int>(QSetting.TagAndLayerLabelSize);
                QHierarchyTagAndLayerLabelSize newTagAndLayerLabelSize;
                if ((newTagAndLayerLabelSize = (QHierarchyTagAndLayerLabelSize)EditorGUI.EnumPopup(getControlRect(0, 16, 31, 6), "Label Size", tagAndLayerLabelSize)) != tagAndLayerLabelSize)
                {
                    QSettings.getInstance().set(QSetting.TagAndLayerLabelSize, (int)newTagAndLayerLabelSize);
                }
                drawSpace(2);

                // SIZE TYPE
                QHierarchyTagAndLayerSizeType tagAndLayerSizeValueType = (QHierarchyTagAndLayerSizeType)QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValueType);
                QHierarchyTagAndLayerSizeType newTagAndLayerSizeValueType;
                if ((newTagAndLayerSizeValueType = (QHierarchyTagAndLayerSizeType)EditorGUI.EnumPopup(getControlRect(0, 16, 31, 6), "Unit Of Width", tagAndLayerSizeValueType)) != tagAndLayerSizeValueType)
                {
                    QSettings.getInstance().set(QSetting.TagAndLayerSizeValueType, (int)newTagAndLayerSizeValueType);
                }
                drawSpace(2);

                // SIZE
                if (newTagAndLayerSizeValueType == QHierarchyTagAndLayerSizeType.Pixel)
                {
                    int tagAndLayerSizeValue = QSettings.getInstance().get <int>(QSetting.TagAndLayerSizeValuePixel);
                    int newLayerSizeValue    = EditorGUI.IntSlider(getControlRect(0, 16, 31, 6), "Width In Pixels", tagAndLayerSizeValue, 1, 250);
                    if (newLayerSizeValue != tagAndLayerSizeValue)
                    {
                        QSettings.getInstance().set(QSetting.TagAndLayerSizeValuePixel, newLayerSizeValue);
                    }
                }
                else
                {
                    float tagAndLayerSizeValuePercent    = QSettings.getInstance().get <float>(QSetting.TagAndLayerSizeValuePercent);
                    float newtagAndLayerSizeValuePercent = EditorGUI.Slider(getControlRect(0, 16, 31, 6), "Percentage Width", tagAndLayerSizeValuePercent, 0, 0.5f);
                    if (tagAndLayerSizeValuePercent != newtagAndLayerSizeValuePercent)
                    {
                        QSettings.getInstance().set(QSetting.TagAndLayerSizeValuePercent, newtagAndLayerSizeValuePercent);
                    }
                }
                drawSpace(2);

                // ALIGNMENT
                QHierarchyTagAndLayerAligment tagAndLayerAligment = (QHierarchyTagAndLayerAligment)QSettings.getInstance().get <int>(QSetting.TagAndLayerAligment);
                QHierarchyTagAndLayerAligment newTagAndLayerAligment;
                if ((newTagAndLayerAligment = (QHierarchyTagAndLayerAligment)EditorGUI.EnumPopup(getControlRect(0, 16, 31, 6), "Alignment", tagAndLayerAligment)) != tagAndLayerAligment)
                {
                    QSettings.getInstance().set(QSetting.TagAndLayerAligment, (int)newTagAndLayerAligment);
                }
                drawSpace(3);
            }
        }